docker 自建 bitwarden 服务

docker 自建 bitwarden 服务

November 08, 2021
分享 ,

以前一直用的 lastpass,后来中间出现过好几次服务器无法访问,疑似背墙的情况出现。而且 chrome 的插件、后台管理页面也没有中文。

蛋疼之下就开始找替代品,之前偶然在 v2ex 上看到有人推荐过 bitwarden 的开源密码管理器的服务,而且客户端、后台都有中文,且同时支持多平台。所以我索折腾了一下这个东西,因为要用 ssl,所以我一直没折腾成功,后来又试过用腾讯的开源应用平台,不过还是失败了。

因为我的图片都存放在七牛的服务器,但是有个扯淡的地方是七牛的 ssl 流量是不免费的...,所以我就暂时搁置了。

后来无意间在中文博客圈微信群里夏普的帮助下才算是正式在自己的 vps 上搭建了一个基于 docker 的 bitwarden 服务,而且不用全站 ssl 的方式。因为是通过命令启动的 docker,所以这里记录一下过程,以免忘记。

安装 docker

$ curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

配置国内镜像,并拉取 bitwardenrs 的 docker 镜像

$ mkdir -p /etc/docker/
$ echo "{\n'registry-mirrors': [\n'https://docker.mirrors.ustc.edu.cn'\n]\n}" > /etc/docker/daemon.json
$ systemctl daemon-reload
$ systemctl start docker
# 把docker加入开机自启
$ systemctl enable docker
# 拉取bitwardenrs镜像
$ docker pull bitwardenrs/server:latest

其他国内镜像

网易 http://hub-mirror.c.163.com
ustc https://docker.mirrors.ustc.edu.cn
中国科技大学 https://docker.mirrors.ustc.edu.cn

申请 ssl 证书

现在有很多平台都可以免费申请 ssl 证书,因为我的域名备案在腾讯云的,所以我直接在腾讯申请了个免费的 ssl 证书。

登录后台,在搜索处搜索 SSL,点击【域名与网站】下的【ssl 证书】

点击【我的证书】-> 【申请免费证书】,然后按要求填资料就好了,一般十几分钟就能下来。

申请完后点列表的下载就可以下载到 SSL 的证书文件压缩包。

我们通过 sftp 工具或者其他的方式把证书压缩包里的 nginx 目录下的两个【.crt,.key】文件放到服务器上去,并记住存放路径,之后会用到。

启动 docker 容器

$ docker run -d --name bitwarden \
  -e ROCKET_TLS='{certs="/ssl/cert.crt",key="/ssl/keys.key"}' \
  -e DOMAIN='https://你绑定的域名:33699' \
  -e SIGNUPS_ALLOWED=false \
  -v /data/ssl/:/ssl/ \
  -v /data/bw-data/:/data/ \
  -p 33699:80 \
  bitwardenrs/server:latest
  1. ROCKET_TLS:后面的 xrts 和 key 是我们上传的证书文件路径
  2. DOMAIN:我的绑定的域名,以及端口
  3. -p:端口转发到容器的 80 端口上。
  4. 然后访问你绑定的域名应该就可以正常访问了。

这里感谢 sharp G., 点击左边的链接即可访问原文章。

docker run -d --name bitwarden -u 1002:1002 -e ROCKET_PORT=8080 -e INVITATIONS_ALLOWED=false  -e SIGNUPS_ALLOWED=false -e SHOW_PASSWORD_HINT=false -e ROCKET_TLS='{certs="/ssl/cert.crt",key="/ssl/keys.key"}'   -e DOMAIN='https://xxxxxx.sharpgan.com:33765/xxx'   -v /data/bw-ssl/:/ssl/   -v /data/bw-data/:/data/   -p 33765:8080   vaultwarden/server:latest

加入评论