项目地址:https://github.com/dani-garcia/vaultwarden
mkdir /www/dk_project/dk_app/vaultwarden
cd /www/dk_project/dk_app/vaultwarden
#如果服务器配置较低,不建议自行构建,请跳过以下克隆仓库步骤,及构建容器镜像,直接复制docker-compose.yml拉取镜像执行docker-compose build && docker-compose up -d 命令即可
git clone https://github.com/dani-garcia/vaultwarden.git .
#创建compose配置文件,复制下方yml配置文件到docker-compose.yml中
vi docker-compose.yml
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: always
privileged: true
user: root
environment:
- "DOMAIN: https://baidu.com" #你的域名
- "LOGIN_RATELIMIT_MAX_BURST: 10" # 登录/两步验证尝试中的最大请求次数
- "LOGIN_RATELIMIT_SECONDS: 60" # 在限制登录次数前,同一IP的登录请求间隔(秒)
- "ADMIN_RATELIMIT_MAX_BURST: 5" # 同上,对于admin账户的请求次数限制
- "ADMIN_RATELIMIT_SECONDS: 60" # 同上,对于admin账户限制请求间隔(秒)
- "ADMIN_SESSION_LIFETIME: 20" # admin账户会话持续时间
- "ADMIN_TOKEN: abc123456" # 管理界面令牌,若不设置管理面板将被禁用
- "SERVER_ADMIN_EMAIL: abc@baidu.com" # 管理员邮箱
- "SENDS_ALLOWED: true" # 控制是否允许用户创建Bitwarden sends
- "SIGNUPS_ALLOWED: true" # 控制新用户是否可以未受邀请注册 true/false
- "SIGNUPS_DOMAINS_WHITELIST: 1.1.1.1,baidu.com" #你的域名或者ip
# 即使上面设置为false,本条用户仍可注册(域名间以,间隔)
- "INVITATIONS_ALLOWED: true" # 允许邀请注册
- "WEBSOCKET_ENABLED: true" # 通知
- "WEB_VAULT_ENABLED: true" # 创建admin账户后建议修改为false,进行重建以防止未授权访问
- "EMERGENCY_ACCESS_ALLOWED: true" # 控制用户是否可以启用紧急访问其账户的权限
volumes:
- /www/dk_project/dk_app/bitwarden/vaultwarden/data/:/data/
ports:
- "127.0.0.1:11221:80" #映射端口,如果想直接ip+端口号访问,直接去除127.0.0.1,只留端口号即可
#构建容器镜像
docker build -t vaultwarden/server:latest .
#如果有先关闭镜像->重新构建->启动镜像
docker-compose down && docker-compose build && docker-compose up -d
所有数据文件都存在/www/dk_project/dk_app/vaultwarden/data 路径下,记得定期备份,以免数据丢失,我个人一天会备份两次
宝塔设置反代,填写域名,选择容器,默认会选择11221端口,创建过后还需要申请下SSL证书才可以
此时密码管理器vaultwarden即可搭建成功。