容器部署bitwarden服务 ## 服务部署 首先创建bitwarden的数据文件夹。 ``` mkdir /home/bitwarden/data ``` ### docker-compose部署 生成admin_token ``` openssl rand -base64 30 +ImZ6F8ezW6s8gWsj3E9ShBLG9cpd6fsLx81h3Wu ``` 部署命令 ``` version: '2' services: app: container_name: bitwarden image: vaultwarden/server restart: always environment: - SIGNUPS_ALLOWED=false - INVITATIONS_ALLOWED=false - ADMIN_TOKEN=+ImZ6F8ezW6s8gWsj3E9ShBLG9cpd6fsLx81h3Wu - LOG_FILE=/data/log.log - LOG_LEVEL=info ports: - 8728:80 volumes: - ./bitwarden/data:/data:rw ``` ### docker命令方式部署 ``` # 生成admin_token openssl rand -base64 30 +ImZ6F8ezW6s8gWsj3E9ShBLG9cpd6fsLx81h3Wu docker run -d --name bitwarden \ -e SIGNUPS_ALLOWED=false \ -e INVITATIONS_ALLOWED=false \ -e ADMIN_TOKEN=+ImZ6F8ezW6s8gWsj3E9ShBLG9cpd6fsLx81h3Wu \ -e LOG_FILE=/data/log.log \ -e LOG_LEVEL=info \ -p 8728:80 \ -v /home/bitwarden/data:/data \ vaultwarden/server:latest ``` 此时,服务已经启动,监听本地端口 8728 ## 申请证书和反向代理 如果有域名的话,可以使用nginx来做反向代理。首先为这个业务申请证书。可以使用lets encrypt的服务。 配置nginx就可以使用https的业务了。参考配置。 ``` server { listen 80; server_tokens off; # access_log /var/log/nginx/web2.access.log main; server_name bitwarden.superpig.win; location ^~ / { rewrite ^ https://$server_name:443$request_uri? permanent; } } server{ listen 443 ssl http2; server_name bitwarden.superpig.win; gzip on; gzip_proxied any; gzip_min_length 1024; gzip_comp_level 3; gzip_types text/plain text/javascript text/css text/json application/javascript application/json image/jpeg image/gif image/png; ssl on; ssl_certificate /etc/letsencrypt/live/bitwarden.superpig.win/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/bitwarden.superpig.win/privkey.pem; ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; ssl_prefer_server_ciphers on; location / { proxy_pass http://127.0.0.1:8728; 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_redirect off; ### Most PHP, Python, Rails, Java App can use this header -> https ### proxy_set_header X-Forwarded-Proto $scheme; } } ``` ## 邀请添加用户 因为是自用的服务,在创建容器的时候设置了`SIGNUPS_ALLOWED=false`,所以不能直接注册用户。但是可以使用admin页面邀请的方式。 假设架设的服务域名为bitwarden.superpig.win,访问页面`https://bitwarden.superpig.win/admin`,此时会要求输入admin token。就是启动容器的时候配置的那串。  进入管理页面后,点击进入User的tab。出现用户管理页面。  输入你中意邀请的邮箱。点击邀请。 此时,再返回注册用户页面。**使用这个邮箱注册**,会发现之前的错误提示没有了。注册成功然后使用这个用户登录即可。 开始享受伟大的bitwarden带来的便利吧。 来自 大脸猪 写于 2020-11-28 22:38 -- 更新于2023-05-21 11:09 -- 0 条评论