# New Installation Help (Raspberry Pi 4 with Docker Compose)

**URL:** <https://vaultwarden.discourse.group/t/new-installation-help-raspberry-pi-4-with-docker-compose/2285>\
**Category:** Help\
**Created:** [January 25, 2023, 10:27pm UTC](https://vaultwarden.discourse.group/t/new-installation-help-raspberry-pi-4-with-docker-compose/2285 "2023-01-25T22:27:26Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Bloodshot\_pico](https://yyz2.discourse-cdn.com/free1/user_avatar/vaultwarden.discourse.group/bloodshot_pico/32/948_2.png) [@Bloodshot\_pico](https://vaultwarden.discourse.group/u/Bloodshot_pico)\
**Post date:** [January 25, 2023, 10:27pm UTC](https://vaultwarden.discourse.group/t/new-installation-help-raspberry-pi-4-with-docker-compose/2285/1 "2023-01-25T22:27:26Z")

</div>

I’m wanting to install this via a Raspberry Pi 4 Model B and I have Nginx on another machine that’s running websites.

I’m wanting to use Docker compose to accomplish this and don’t want vaultwarden to be using port 80. I’m still learning and messing around with both Nginx and Docker along with networking. Honestly it’s been a pain trying to learn it.

Basically what I’m after is to run VaultWarden on a Pi using docker compose and not using port 80. I have no idea how I would do this. And I’m asking here before I mess anything up via the installation.

I’ve got this to work for local:

```auto
docker pull vaultwarden/server:latest
docker run -d --name vaultwarden -v /vw-data/:/data/ -p 4444:80 vaultwarden/server:latest

```

But I’m wanting to set it up using docker compose so I can see all the settings later down the road if I have to.

Any advice/help is greatly appreciated. 🙂  
~Blood

---

<div class="post-metadata">

**Author:** ![CyberWarden](https://yyz2.discourse-cdn.com/free1/user_avatar/vaultwarden.discourse.group/cyberwarden/32/980_2.png) [@CyberWarden](https://vaultwarden.discourse.group/u/CyberWarden)\
**Post date:** [February 11, 2023, 10:49am UTC](https://vaultwarden.discourse.group/t/new-installation-help-raspberry-pi-4-with-docker-compose/2285/2 "2023-02-11T10:49:14Z")

</div>

Just for learning purpose you need to prepare environment where you can easily reverse your actions. Try to setup on your PC a simple VM with VirtualBox with Ubuntu Server 22 as beginner friendly OS. After each succesful step, take a snapshot of VM. After every failure just rollback to previous snapshot to recover in few seconds.

Try something like below to start with docker compose.

Run command to generate Admin token:

```auto
rc=1; while [[$rc -ne 0]]; do openssl rand -base64 32 |grep -ie '^Qa';rc=$?; done

```

Save string to use later. Run text editor:

```auto
nano docker-compose.yml

```

and paste content below:

```auto
version: "3"
services:
  vaultwarden:
    image: vaultwarden/server:latest-alpine
    user: 1000:1000
    volumes:
      - /srv/vaultwarden:/data
    ports:
      - 7777:80
      - 3012:3012
    restart: always
    environment:
      - WEBSOCKET_ENABLED=true
      - SIGNUPS_ALLOWED=false
      - ADMIN_TOKEN='XXXXXXXXXXXXXXXXXXXX'

```

Replace XXXXXX string your previously generated admin token. Save your YML file and run commands:

```auto
sudo mkdir -p /srv/vaultwarden
sudo chown $USER:$USER /srv/vaultwarden/

```

Finally run your compose:

```auto
sudo docker compose up -d

```

Check results:

```auto
sudo docker ps -a

```

To be honest you should register on Docker forum to seek knowledge of docker compose besides reading well written documentation.This is a Vaultwarden forum.
