vaultwarden(原bitwarden_rs)是轻量级bitwarden服务端程序,作者推荐使用docker架设
一. 下载镜像
docker pull vaultwarden/server
二. 启动容器
docker run -d --name bitwarden --restart=always -v /root/vaultwarden_data/:/data/ -p 20000:80 -p 3012:3012 -e ADMIN_TOKEN=后台管理密码 -e SIGNUPS_ALLOWED=false -e ENABLE_DB_WAL=false -e DATABASE_URL=mysql://数据库用户名:用户密码@ip:3306/数据库名称 -e ROCKET_PORT=80 vaultwarden/server:latest
-
参数说明
- -v /root/vaultwarden_data/:/data/数据目录
- -p 20000:80 把bitwarden的默认服务端口80映射到宿主20000端口
- -p 3012:3012 映射websocket端口
- -e ADMIN_TOKEN=后台管理密码
- -e SIGNUPS_ALLOWED=false 设置不允许新用户注册(一般先开启注册,自己注册后删除容器重新设置关闭注册并启动容器)
- -e DATABASE_URL=mysql://数据库用户名:用户密码@ip:3306/数据库名称
- -e ROCKET_PORT=80 bitwarden的服务端口(容器内),不添加该参数的话默认就是80
重要:
新版本中,ADMIN_TOKEN 已支持设置为Argon2进行Hash后的字符串。
安全起见,不要再设置为明文密码。以下为通过容器计算hash的方法:
方法一:通过已运行的容器获取
docker exec -it 容器名 /vaultwarden hash
方法二:创建临时容器获取
docker run --rm -it vaultwarden/server /vaultwarden hash
两种方法执行后返回
Generate an Argon2id PHC string using the 'bitwarden' preset:
Password:
Confirm Password:
ADMIN_TOKEN='$argon2id$v=19$m=65540,t=3,p=dsasadhakjblahblahyourhash'
Generation of the Argon2id PHC string took: 272.278337ms
这样就得到了ADMIN_TOKEN
似乎必须用单引号才能识别
Comments NOTHING