networks: vw_net: {} services: vaultwarden: image: vaultwarden/server:latest restart: unless-stopped volumes: - ./vw-data:/data environment: DOMAIN: "https://pass.mikepziegler.com" DATABASE_URL: "postgresql://vaultwarden:x93tFoDo0JBw9osv3vDZRFn0B8LQncznqCS81Lt3uCC719RspWIyKaOFLNq6PPT@db:5432/vault" ADMIN_TOKEN: "HPxKlwoT4AfxDnVURU0ArnpFCmusaRcuN4pBjKTO" WEBSOCKET_ENABLED: "true" SIGNUPS_ALLOWED: "true" # Turn to false when already registered # SIGNUPS_VERIFY: "true" ports: - "4056:80" depends_on: - db networks: - vw_net db: image: postgres:13 container_name: vw_postgres restart: unless-stopped environment: - POSTGRES_USER=vaultwarden - POSTGRES_PASSWORD=x93tFoDo0JBw9osv3vDZRFn0B8LQncznqCS81Lt3uCC719RspWIyKaOFLNq6PPT - POSTGRES_DB=vault volumes: - ./postgres-data:/var/lib/postgresql/data expose: - "5432" # optional: visible to vaultwarden on vw_net only healthcheck: test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB -h 127.0.0.1"] interval: 10s timeout: 5s retries: 5 networks: - vw_net