Bitwarden (Vaultwarden) 部署使用教程

Bitwarden 是一款自由且开源的密码管理服务,用户可在加密的保管库中存储敏感信息(例如网站登录凭据)。Bitwarden 平台提供有多种客户端应用程序,包括网页用户界面、桌面应用,浏览器扩展、移动应用以及命令行界面。Bitwarden 提供云端托管服务,并支持自行部署解决方案。

1.创建目录

输入以下命令创建目录,存放 Vaultwarden 的数据:

1
mkdir /opt/vaultwarden && cd /opt/vaultwarden

2.创建 docker-compose 配置文件

输入以下命令创建 docker-compose 配置文件:

1
vim /opt/vaultwarden/docker-compose.yml

I 进入输入模式,复制以下内容到文件中:

1
2
3
4
5
6
7
8
9
10
11
12
13
version: '3'

services:
vaultwarden:
image: vaultwarden/server:latest-alpine
container_name: vaultwarden
restart: always
ports:
- '6666:80' #主机:容器
volumes:
- ./vw-data:/data
environment:
DOMAIN: "https://example.com" #你的域名

先按 ESC 键退出输入模式,然后输入一个英文 : ,输入 wq 回车保存并退出vim编辑器。

3.启动服务

输入以下命令启动 Vaultwarden 服务:

1
docker-compose up -d

现在 Vaultwarden 服务已经启动了,默认地址为 http://localhost:6666

在使用之前,你最好使用反向代理隐藏端口并配置 HTTPS,确保 Vaultwarden 服务的安全。

配置完毕之后你就可以访问 Vaultwarden 网页端了。

4.docker-compose 配置详解

4.1 images

vaultwarden/server:latest 是 Vaultwarden 服务器的 Docker 镜像,latest 是最新版本。

而本文使用的是 vaultwarden/server:latest-alpine,是基于 Alpine Linux 的最新版本。镜像功能与 latest 相同,但基于 Alpine 而非 Debian,镜像更小,基础应用程序更新。

当然你也可以给镜像指定一个特定的版本,如 vaultwarden/server:1.22.0vaultwarden/server:1.22.0-alpine

4.2 ports

6666:80 表示将容器的 80 端口映射到主机的 6666 端口。可以根据自己的需求修改。

4.3 volumes

./vw-data:/data 表示将主机的 ./vw-data 目录挂载到容器的 /data 目录。但是不建议更改,与官方文档保持一致。

4.4 environment

Vaultwarden 推荐使用环境变量来配置服务

DOMAIN :你的域名。

下面是一些其他的环境变量,你可以根据自己的需求添加:

SIGNUPS_ALLOWED :是否允许注册新用户,默认为 true。你可以在自己注册完毕后,将其设置为 false 来关闭注册功能。但即使禁用了,管理员还是可以继续邀请新用户。
ADMIN_TOKEN :开启管理员功能,需要设置一个 token,推荐使用命令 openssl rand -base64 48 生成一个随机 token。设置以后,访问 https://example.com/admin,输入 token 即可进入管理员界面。管理员可以查看并删除所有已注册的用户。它也允许邀请新用户,即使禁用了注册功能。
INVITATIONS_ALLOWED :是否允许管理员邀请新用户,默认为 true。关闭后,管理员将无法邀请新用户。
WEB_VAULT_ENABLED :是否启用 Web 界面,默认为 true。关闭后,用户将无法使用 Web 界面,但仍然可以使用客户端。注册之后也可以禁用 Web 界面。
建议前端注册用户成功后,进行如下配置,禁止注册和 Web 界面:

1
2
3
environment:
SIGNUPS_ALLOWED: "false"
WEB_VAULT_ENABLED: "false"

5.维护 Vaultwarden

5.1 更新

1
2
docker-compose pull
docker-compose up -d

5.2 停止并移除容器

1
docker-compose down

5.3 数据备份

Vaultwarden 的数据存储在 ./vw-data 目录中,可以直接备份这个目录。

6.完成,部署成功