services: db: image: postgres:17 container_name: Vaultwarden-DB hostname: vaultwarden-db security_opt: - no-new-privileges:true healthcheck: test: ["CMD", "pg_isready", "-q", "-d", "vaultwarden", "-U", "vaultwardenuser"] timeout: 45s interval: 10s retries: 10 volumes: - /volume1/docker/vaultwarden/db:/var/lib/postgresql/data:rw environment: POSTGRES_DB: vaultwarden POSTGRES_USER: vaultwardenuser POSTGRES_PASSWORD: vaultwardenpass restart: on-failure:5 vaultwarden: image: vaultwarden/server:latest container_name: Vaultwarden hostname: vaultwarden security_opt: - no-new-privileges:true user: 1026:100 ports: - 4080:4020 volumes: - /volume1/docker/vaultwarden/data:/data:rw environment: ROCKET_PORT: 4020 DATABASE_URL: postgresql://vaultwardenuser:vaultwardenpass@vaultwarden-db:5432/vaultwarden ADMIN_TOKEN: schwa-mi@VaultWarden DISABLE_ADMIN_TOKEN: false DOMAIN: https://vaultwarden.mschwab.net SMTP_HOST: smtp.gmail.com SMTP_FROM: michael.schwab82@gmail.com SMTP_PORT: 587 SMTP_SECURITY: starttls SMTP_USERNAME: michael.schwab82@gmail.com SMTP_PASSWORD: jaiauojwzxxjiwgz restart: on-failure:5 depends_on: db: condition: service_started