1、目标
根据该教程,最终可以完成:
- 使用 Docker 方式搭建自己的密码管理服务:
- 使用 Caddy 方向代理到自己的密码管理服务。
2、准备
- 一台云服务器:必须。
- 作用:提供公网访问入口。
- 性能要求:入门款即可,我自己的服务器是:1C2G,2M带宽的入门款。
- 一个域名:通过域名访问自建的域名服务。
💡
在部署时更换成你的域名。
3、部署
整个部署过程包括:
- 使用 Docker 启动 VaultWarden 服务。
- 配置 Caddy,反向代理到 VaultWarden 服务。
3.1 部署 VaultWarden 服务
mkdir /data/bitwarden
docker run -d \
--rm \
--name bitwarden \
-p 8080:80 \
-p 3012:3012 \
-e SIGNUPS_ALLOWED=true \
-e WEB_VAULT_ENABLED=true \
-e DOMAIN=https://mydomain.cn \
-v /data/bitwarden:/data \
bitwardenrs/server:latest
上面命令的各个参数含义如下:
-d 在后台运行
--rm 容器停止运行后,自动删除容器文件
--name bitwarden容器的名字为bitwarden
-p 8080:80 容器的端口80映射到8080,在Nginx配置
-p 3012:3012 容器的端口3012映射到3012
-e SIGNUPS_ALLOWED=true 设置环境变量SIGNUPS_ALLOWED=true允许用户注册
-e WBE_VAULT_ENABLE=true 设置环境变量WBE_VAULT_ENABLE=true
-e DOMAIN=https://mydomain.cn设置域名,需要替换成自己申请的域名
-v /data/bitwarden:/data 宿主机的/data/bitwarden目录映射到容器的/data/目录
3.2 配置 Caddy 反向代理
Caddy 部署可以参考之前 Headscale 文章中对应的流程。
修改 Caddy 的反向代理配置,编辑 [caddy/container-config/Caddyfile],增加内容如下,
yaml
https://example.com {
reverse_proxy * http://vaultwarden:8080
}
YAMLCopy
注意:
- 域名更换成你对应的域名。
- vaultwarden 为 Docker 启动的实例。
修改配置后,重启 Caddy,
yaml
cd caddy/
docker compose restart
YAMLCopy
运行结果:打开浏览器,打开页面:[https://example.com]
![](https://oneperfect.cn/wp-content/uploads/2024/07/image-1-1024x565.png)
3.3 配置插件
1)Chrome 浏览器插件
下载 Chrome Bitwarden 密码管理器 插件,安装后,点击配置:「自托管」,
配置「服务器 URL」,填入我们的地址,
其他的 MacOS、iOS 的类似,选择「自托管」后即可。