
Vaultwarden 部署
Vaultwarden (Bitwarden) 个人私有化部署指南
1. 部署环境准备
目录结构推荐:
在 NAS 或服务器上创建如下目录结构:
/volume1/docker/vaultwarden/
├── docker-compose.yml # 核心服务配置
├── .env # 环境变量配置文件
└── vw-data/ # 数据持久化目录 (自动生成)
2. 核心配置文件
(1) docker-compose.yml
将以下内容保存为
docker-compose.yml
version: '3'
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: unless-stopped
# 读取同级目录下的 .env 文件
env_file:
- .env
volumes:
# 数据映射: 左边是宿主机路径,右边是容器内路径
- ./vw-data:/data
ports:
# 端口映射: 宿主机端口:容器端口
# ⚠️ 注意:这里使用 8009 避免与其他服务(如 8008)冲突
- 8009:80
# (可选) WebSocket 端口,通常走 80 即可,保留以备调试
- 3012:3012
(2) .env 环境变量
将以下内容保存为
.env。这是控制安全性和功能的关键文件。
# ==============================
# 基础配置
# ==============================
# 你的反代域名 (⚠️ 必须以 https:// 开头)
# 影响邮件邀请链接和 WebAuthn 等安全功能
DOMAIN=[https://pass.yourdomain.com](https://pass.yourdomain.com)
# 开启 WebSocket (强烈建议开启,保证多端同步及时性)
WEBSOCKET_ENABLED=true
# ==============================
# 安全限制 (重中之重)
# ==============================
ORG_CREATION_USERS=misaka11232@gmail.com #此为仅允许这个邮箱注册账号
# 允许注册开关
# 流程: 首次设为 true -> 注册管理员账号 -> 改为 false -> 重启容器
SIGNUPS_ALLOWED=false
# 邀请限制
# false: 禁止普通用户邀请其他人
INVITATIONS_ALLOWED=false
# 密码提示
# false: 登录失败时不显示密码提示,防止社工攻击
SHOW_PASSWORD_HINT=false
# 管理后台令牌 (可选)
# 开启后访问 /admin 需要此 Token。建议用 `openssl rand -base64 48` 生成
# 如不需要管理后台,建议保持注释状态
# ADMIN_TOKEN=这里填入只有你知道的超长复杂字符串
# ==============================
# 隐私保护
# ==============================
# 图标抓取服务
# internal: 由 NAS 内网抓取,不经过 Bitwarden 官方服务器,保护浏览隐私
ICON_SERVICE=internal
# ==============================
# 日志与系统
# ==============================
TZ=Asia/Shanghai
LOG_LEVEL=warn
3. 反向代理配置 (Lucky / Nginx)
为了让 Vaultwarden 正常工作(特别是 HTTPS 和 WebSocket),反代配置必须包含以下要点:
关键 Header 设置
在 Lucky 的 “万能反代 / 自定义 Header” 或 Nginx 配置中,确保传递以下头信息:
- X-Forwarded-Proto:
https (告诉容器它是通过 HTTPS 访问的) - Upgrade:
$http_upgrade (WebSocket 必需) - Connection:
"upgrade" (WebSocket 必需)
隐藏登录页 (防搜索引擎收录)
在 响应头 (Response Header) 中添加以下内容,防止 Google/Baidu 收录你的私有库:
- Header:
X-Robots-Tag - Value:
noindex, nofollow, noarchive
4. 常用维护命令
启动/更新配置 (修改 .env 后必须执行)
docker-compose up -d
停止服务
docker-compose down
查看日志 (排查启动报错)
docker-compose logs -f --tail=100
更新 Vaultwarden 版本
docker-compose pull
docker-compose up -d
5. 数据备份策略 (保命操作)
Vaultwarden 的所有数据(账号、密码、密钥)都存储在 vw-data 目录中。
只要备份了这个文件夹,就可以在任何机器上恢复。
简易备份脚本示例:
# 建议加入 Crontab 定时任务
tar -czvf /你的备份盘/vw-backup-$(date +%F).tar.gz /volume1/docker/vaultwarden/vw-data
