DATABASE_URL: Database connection string (required).DOMAIN: Public URL used by Vaultwarden.ADMIN_TOKEN: Token for admin panel access.WEBSOCKET_ENABLED: Enables websocket notifications.ROCKET_PORT/PORT: Runtime port binding (platform-dependent).- Shared SMTP inputs from
deploy/vps/services/suite-manager/.envwhen enabled:SMTP_ENABLEDSMTP_HOSTSMTP_FROMSMTP_FROM_NAMESMTP_USERNAMESMTP_PASSWORDSMTP_PORTSMTP_SECURITY(starttls,force_tls, oroff)
Environment variables:
POSTGRES_USERPOSTGRES_PASSWORDPOSTGRES_DB
Volumes:
- Required:
/var/lib/postgresqlfor PostgreSQL 18 and later.
Healthcheck:
pg_isready --dbname=$POSTGRES_DB --username=$POSTGRES_USER
vaultwarden->vaultwarden-postgres: setDATABASE_URLtopostgresql://<user>:<pass>@vaultwarden-postgres:5432/<db>vaultwarden->suite-manager: optional shared SMTP settings can be sourced from the shared suite env file for password-reset, verification, and invite-capable flows.
- SMTP is fully optional and is intended for operators who already have access to an SMTP server.
- When
SMTP_ENABLEDis explicitly false, the MOS startup wrapper removes shared SMTP variables before Vaultwarden validates its mail configuration. - When the shared SMTP values are present, Vaultwarden can use them for verification mail, welcome mail, master password hint mail, and similar account emails.
- The canonical setup and troubleshooting guide lives in the dedicated advanced SMTP doc: Optional email with SMTP.
- Some email-triggering actions may feel slow if the configured SMTP server is unreachable, because Vaultwarden sends those emails as part of the request flow.