这是一份详细的在以Debian为例的Linux服务器上安装Docker并部署Vaultwarden密码管理服务的指导手册。
Vaultwarden是一个使用Rust编写的非官方Bitwarden服务器实现,它与官方Bitwarden客户端兼容,非常适合不希望运行官方的占用大量资源的自托管部署,它是理想的选择。
1、安装docker
#下载安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh
#下面这个安装预计需要25--
sudo sh get-docker.sh
安装完毕后,可以输入docker -v来查看是否安装完毕。
Docker 服务的相关操作:
#启动
systemctl start docker
#重启
systemctl restart docker
#停止
systemctl stop docker
2、安装Vaultwarden
创建一个存储Vaultwarden数据的目录,如/usr/local/Container/vaultwarden
mkdir -p /usr/local/Container/vaultwarden
在 Docker Hub 上搜索所有与 “vaultwarden” 相关的镜像
sudo docker search vaultwarden
获取vaultwarden/server的镜像
sudo docker pull vaultwarden/server:latest
使用docker run命令创建并启动容器,如下:
docker run -d --name vaultwarden -v /usr/local/Container/vaultwarden/:/data/ --restart unless-stopped -e ADMIN_TOKEN=9PZFJAxvIPC16AGj5 -p 8080:80 vaultwarden/server:latest
其中ADMIN_TOKEN参数为vaultwarden的管理密码。
安装完成后,可以通过http://example.com:8080访问,注意vaultwarden的web访问需要开启https,可以通过本机nginx开启代理,即可使用https://vault.example.com访问,如下:
#Vaultwarden反向代理
server {
#listen 443 ssl http2;
#listen [::]:443 ssl http2;
server_name vault.example.com;
charset utf-8;
ssl_protocols TLSv1.3 TLSv1.2;
ssl_buffer_size 4k;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 30m;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256;
add_header Strict-Transport-Security "max-age=31536000";
location / {
proxy_pass http://127.0.0.1:8080;
#为代理提供透传真实IP
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
#SSL 证书位置配置
ssl_certificate /usr/local/nginx/cert/example.com.fullchain.pem;
ssl_certificate_key /usr/local/nginx/cert/example.com.key.pem;
}
|