官方github地址:https://github.com/dani-garcia/vaultwarden

在.env.template文件中有配置参数的信息

参数很多,用了一些较为必要的参数,通过docker compose部署

在需要部署的服务器上通过此命令:

openssl rand -base64 48

生成一串48个字符的Base64 编码。

再创建好文件夹保存vaultwarden的信息:

mkdir -p /root/data/docker_data/vaultwarden
cd /root/data/docker_data/vaultwarden
vim vaultwarden.yml

将以下布置粘进vaultwarden.yml

services:
  vaultwarden:
    container_name: vaultwarden
    image: vaultwarden/server:latest
    restart: unless-stopped
    volumes:
      - ./data/:/data/
    ports:
      - 8080:80
    environment:
      - DOMAIN=https://subdomain.yourdomain.com # 与你Vaultwarden实例关联的域名
      - LOGIN_RATELIMIT_MAX_BURST=10 # 允许在一阵登录/两步验证尝试中的最大请求次数。
      - LOGIN_RATELIMIT_SECONDS=60 # 这是来自同一IP的登录请求之间的平均秒数,在Vaultwarden限制登录次数之前。
      - ADMIN_RATELIMIT_MAX_BURST=10 # 这与LOGIN_RATELIMIT_MAX_BURST相同,只争对admin面板。
      - ADMIN_RATELIMIT_SECONDS=60 # 这与LOGIN_RATELIMIT_SECONDS相同
      - ADMIN_SESSION_LIFETIME=20 # 会话持续时间
      - ADMIN_TOKEN=YourReallyStrongAdminTokenHere # 此值是Vaultwarden管理员面板的令牌(一种密码)。为了安全起见,这应该是一个长的随机字符串。如果未设置此值,则管理员面板将被禁用。建议openssl rand -base64 48 生成ADMIN_TOKEN确保安全
      - SENDS_ALLOWED=true  # 此设置决定是否允许用户创建Bitwarden发送 - 一种凭证共享形式。
      - EMERGENCY_ACCESS_ALLOWED=true # 此设置控制用户是否可以启用紧急访问其账户的权限。例如,这样做可以在用户去世后,配偶可以访问密码库以获取账户凭证。可能的值:true / false。
      - WEB_VAULT_ENABLED=true # 此设置决定了网络保险库是否可访问。一旦您配置了您的账户和客户端,停止您的容器,然后将此值切换为false并重启Vaultwarden,可以用来防止未授权访问。可能的值:true/false。
      - SIGNUPS_ALLOWED=true # 此设置控制新用户是否可以在没有邀请的情况下注册账户。可能的值:true / false。

DOMAIN:换上自己的域名

ADMIN_TOKEN:换上生成的48位Base64编码

完成后

docker compose up -d

可以提前反向代理一下,或者直接ip:8080进入,然后创建账户,创建好后回到服务器,还是在刚才的文件夹下(/root/data/docker_data/vaultwarden)

docker compose restart

这样就可以防止别人再注册账号