refactor: rewrite vaultwarden_dev to match template conventions

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
code
2026-07-15 02:39:22 +00:00
co-authored by Claude Fable 5
parent 66938e6656
commit e28d399ea7
4 changed files with 127 additions and 42 deletions
+75 -8
View File
@@ -1,15 +1,82 @@
# Vaultwarden
Dockerhub: https://hub.docker.com/r/vaultwarden/server
Github: https://github.com/dani-garcia/vaultwarden
Wiki: https://github.com/dani-garcia/vaultwarden/wiki
## Overview
Reverse Proxy Port: 80
Vaultwarden is a lightweight, Bitwarden-compatible password manager
server written in Rust. It works with the official Bitwarden browser
extensions and mobile apps.
## Usage
## Project Details
[Disable new users](https://github.com/dani-garcia/bitwarden_rs/wiki/Disable-registration-of-new-users).
- **Project Repository:** [github.com/dani-garcia/vaultwarden](https://github.com/dani-garcia/vaultwarden)
- **Container Image:** [Docker Hub](https://hub.docker.com/r/vaultwarden/server)
- **Documentation:** [Vaultwarden Wiki](https://github.com/dani-garcia/vaultwarden/wiki)
- **Reverse Proxy Port:** `80`
[SMTP](https://github.com/dani-garcia/bitwarden_rs/wiki/SMTP-configuration)
## Getting Started
To enable the admin page, you need to set an authentication token. This token can be anything, but it's recommended to use a long, randomly generated string of characters, for example running openssl rand -base64 48.
1. Copy `sample.env`, set `VAULT_DOMAIN` and a random
`VAULT_ADMIN_TOKEN` (`openssl rand -base64 48`)
2. Start the container: `docker compose up -d`
3. Open http://localhost:8083/admin, sign in with the admin token, and
invite your users (signups are disabled by default)
## Environment Variable Notes
VAULT_DOMAIN public base URL; Bitwarden clients require https,
so point this at your reverse-proxy domain for real use
VAULT_SIGNUPS_ALLOWED open registration (default false; invite
users from the admin page instead)
VAULT_ADMIN_TOKEN token for the /admin page; leave unset to
disable the admin page entirely
SMTP_* optional mail settings for invitations and password-hint
emails; set all or none
VAULT_PORT host port for the web UI (default 8083)
See the [wiki](https://github.com/dani-garcia/vaultwarden/wiki) for
the full configuration reference.
## Volume Notes
- `/data` — SQLite database, attachments, icon cache, and RSA keys;
stored at `${VOL_PATH:-/data}/vaultwarden` on the host. Back this
up — it is the entire vault.
## Network Notes
Requires proxy network
## Docker Run
```bash
docker run -d \
--name=vaultwarden \
-e DOMAIN=https://vault.example.com \
-e SIGNUPS_ALLOWED=false \
-e ADMIN_TOKEN=changeme-to-a-long-random-string \
-p 8083:80 \
-v /data/vaultwarden:/data \
vaultwarden/server:latest
```
## Additional Notes / Gotchas
- This is a `_dev` stack — experimental, not yet production-ready.
- Bitwarden clients refuse to connect over plain http (except to
localhost) — serve it through the reverse proxy with TLS.
- WebSocket notifications are served on the main port since
Vaultwarden 1.29; no separate `WEBSOCKET_ENABLED` setting or port
3012 proxying is needed anymore.
- [Disable registration of new users](https://github.com/dani-garcia/vaultwarden/wiki/Disable-registration-of-new-users)
- [SMTP configuration](https://github.com/dani-garcia/vaultwarden/wiki/SMTP-configuration)
## Dockhand Stack, Deploy from Git
- Cookbooks Repository
- stackname: vaultwarden_dev
- Compose file path: vaultwarden_dev/compose.yaml
- Additional env file (optional): vaultwarden_dev/sample.env
Then "Load" vaultwarden_dev/sample.env into the Environment variables in dockhand.
Create the Stack