Table of Contents
Clone the repository, then from the root of the repository run to build with default sqlite backend:
Recommended way to build
Please read the documentation provided in the docker directory for the latest information on how to build Vaultwarden locally.
This can be done via docker or podman. See: https://github.com/dani-garcia/vaultwarden/tree/main/docker
Simple ways to build
# Build the docker image with all databases supported:
docker buildx build -t vaultwarden .
To build with SQLite backend only run:
# Build the docker image:
docker buildx build -t vaultwarden --build-arg DB=sqlite .
To build with MySQL backend only run:
# Build the docker image:
docker buildx build -t vaultwarden --build-arg DB=mysql .
To build with Postgresql backend only run:
# Build the docker image:
docker buildx build -t vaultwarden --build-arg DB=postgresql .
in docker-compose.yml it looks like
vaultwarden:
image: vaultwarden
build:
context: vaultwarden
args:
DB: postgresql
FAQs
Troubleshooting
Container Image Usage
- Which container image to use
- Starting a container
- Using Docker Compose
- Using Podman
- Updating the vaultwarden image
Reverse Proxy
HTTPS
Configuration
- Overview
- Enabling admin page
- SMTP configuration
- Disable registration of new users
- Disable invitations
- Enabling WebSocket notifications
- Enabling Mobile Client push notification
- Enabling SSO support using OpenId Connect
- Other configuration
Database
- Using the MariaDB (MySQL) Backend
- Using the PostgreSQL Backend
- Running without WAL enabled
- Migrating from MariaDB (MySQL) to SQLite
Security
- Hardening Guide
- Password hint display
- Enabling U2F and FIDO2 WebAuthn authentication
- Enabling YubiKey OTP authentication
- Fail2Ban Setup
- Fail2Ban + ModSecurity + Traefik + Docker
Performance
Customization
- Translating the email templates
- Translating admin page
- Customize Vaultwarden CSS
- Using custom website icons
- Disabling or overriding the Vault interface hosting
Backup
Development
- Building binary
- Building your own docker image
- Git hooks
- Differences from the upstream API implementation
Alternative deployments
- Pre-built binaries
- Creating a systemd service
- Third-party packages
- Deployment examples
- Disable the admin token
Other Information
🛡️ Vaultwarden — A Bitwarden server, reimagined in Rust
🏠 Wiki Home · 📖 FAQs · ⚙️ Configuration · 🔒 Hardening Guide · 🐳 Docker
💬 Get in touch
❤️ Love Vaultwarden? Consider supporting upstream Bitwarden — without their work, this project wouldn't exist.
Vaultwarden is an unofficial, community-driven Bitwarden-compatible server. It is not associated with, endorsed by, or affiliated with Bitwarden, Inc. — "Bitwarden" is a trademark of Bitwarden, Inc.
Maintained with care by @dani-garcia and contributors · Wiki content licensed under the project's terms