Vaultwarden — лёгкий совместимый с Bitwarden сервер паролей. Ниже — установка за Traefik: свой сейф без подписки Bitwarden и без публикации лишних портов наружу.
Ниже — минимальный и проверенный стек: один контейнер + Traefik + HTTPS.
mkdir -p ~/vaultwarden/data
cd ~/vaultwarden
openssl rand -base64 48
Сохраните вывод openssl — это будет ADMIN_TOKEN для админ-панели.
docker-compose.ymlЗамените vault.yourdomain и токен:
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: unless-stopped
environment:
DOMAIN: "https://vault.yourdomain"
SIGNUPS_ALLOWED: "false"
ADMIN_TOKEN: "PASTE_ADMIN_TOKEN_HERE"
WEBSOCKET_ENABLED: "true"
volumes:
- ./data:/data
labels:
- traefik.enable=true
- traefik.http.middlewares.vaultwarden_https.redirectscheme.scheme=https
- traefik.http.routers.vaultwarden.entrypoints=web
- traefik.http.routers.vaultwarden.middlewares=vaultwarden_https@docker
- traefik.http.routers.vaultwarden.rule=Host(`vault.yourdomain`)
- traefik.http.routers.vaultwarden_https.entrypoints=websecure
- traefik.http.routers.vaultwarden_https.rule=Host(`vault.yourdomain`)
- traefik.http.routers.vaultwarden_https.tls=true
- traefik.http.routers.vaultwarden_https.tls.certresolver=le
- traefik.http.services.vaultwarden.loadbalancer.server.port=80
networks:
- traefik_network
networks:
traefik_network:
external: true
SIGNUPS_ALLOWED=false — после создания своего аккаунта регистрация закрыта. Для первого запуска временно поставьте true, создайте пользователя, затем верните false и перезапустите контейнер.
docker compose up -d
docker compose logs -f --tail=50 vaultwarden
Откройте https://vault.yourdomain, зарегистрируйте аккаунт, установите клиент Bitwarden (официальные приложения совместимы) и укажите свой сервер в настройках.
Админ-панель: https://vault.yourdomain/admin (вход по ADMIN_TOKEN).
Критичен каталог ./data (база и вложения). Копируйте его регулярно вместе с другими volume сервера.
ADMIN_TOKEN вне git и вне публичных чатов.Готово: свой Bitwarden-совместимый сейф за HTTPS.