记录Docker搭建vaultwarden(原bitwarden_rs)

Docker & Docker-compose

首先,安装Docker,这是官方的一键脚本

curl -sSL https://get.docker.com/ | sh

也可以参考官方文档:https://docs.docker.com/engine/install/

安装完成后,测试跑一下hello world

sudo docker run hello-world

安装Docker-Compose

sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

或者

sudo pip install docker-compose

检测是否安装成功

docker-compose --version

修改配置

新建文件夹,可以是任何位置

mkdir /www/wwwroot/vaultwarden && cd /www/wwwroot/vaultwarden

修改配置文件

vi config.env
DATABASE_URL=/data/bitwarden.db #数据库位置
ROCKET_WORKERS=10 #线程
WEB_VAULT_ENABLED=true #开启 Web 客户端
WEBSOCKET_ENABLED=true #开启WEBSOCKET
ADMIN_TOKEN= #开启admin面板,token建议用 openssl rand -base64 48 命令生成

修改服务描述文件

vi docker-compose.yml
version: '3'

services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    volumes:
      - ./vw-data:/data
    ports:
      - "3001:80"
      - "3012:3012"
    env_file:
      - config.env

在宝塔/Nginx/Caddy等上添加反代

宝塔:

新建网站-设置-反向代理-添加反向代理,目标填写http://127.0.0.1:3001 (注意修改自己的端口)

修改这条反代的配置文件(注意修改自己的端口)

#PROXY-START/
location ~* \.(php|jsp|cgi|asp|aspx)$
{
	proxy_pass http://127.0.0.1:3001;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
}
location /
{
    proxy_pass http://127.0.0.1:3001;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    
    add_header X-Cache $upstream_cache_status;
    
    #Set Nginx Cache
    
    	add_header Cache-Control no-cache;
    expires 12h;
}
location /notifications/hub {
    proxy_pass http://127.0.0.1:3012;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
}
location /notifications/hub/negotiate {
    proxy_pass http://127.0.0.1:3001;
}
#PROXY-END/

使用

启动 docker-compose up -d

停止 docker-compose down

重启 docker-compose down && docker-compose up -d

查看运行状态 docker ps

添加开机自启:vi /etc/rc.d/rc.local ,在最后添加

/usr/local/bin/docker-compose -f /www/wwwroot/vaultwarden/docker-compose.yml up -d

客户端支持Bitwarden Windows、macOS 、Linux 、Android、iOS端,也可以安装Chrome,Firefox,Opera,Edge等浏览器的拓展使用,还可以网页端管理使用。

参考资料:

https://uefeng.com/bitwarden-password-server.html

https://sspai.com/post/54728

https://yuwei.cc/selfhost-bitwarden-rs.html

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注