本文发布于315天前,最后更新于140天前,其中的信息可能有所发展或是发生改变。
1.前言
The password manager trusted by millions At home, at work, or on the go, Bitwarden easily secures all your passwords and sensitive information.
夜梦推荐此项目使用1panel快速部署。
2.准备
2.1服务器
配置参考 | 最低配置 | 推荐配置 |
---|---|---|
CPU | x64, 1.4GHz | x64, 2GHz dual core |
内存 | 2GB RAM | 4GB RAM |
存储 | 12GB | 25GB |
Docker版本 | Engine 19 and Compose 1.24 | Engine 19 and Compose 1.24 |
2.2域名
如果你有公网访问的需求,夜梦强烈推荐使用自己的域名,并将所使用的域名解析到自己的服务器上。
2.3 docker/docker-compose
在开始部署之前,你需要安装 docker 和 docker-compose。具体安装方法请参考:在服务器上安装 docker/docker-compose
3.部署
3.1端口
Bitwarden默认占用80与443端口,你也可以在后续的安装中修改占用端口。
3.2用户(可选)
可选
推荐新建一个专门的用户来运行Bitwarden。仅为官方推荐,非必需。
创建一个bitwarden用户:
代码语言:javascript复制sudo adduser bitwarden
设置密码(一定要强,输入时不会显示):
代码语言:javascript复制sudo passwd bitwarden
创建一个docker组(如果还没有的话):
代码语言:javascript复制sudo groupadd docker
将用户bitwarden添加到docker组中:
代码语言:javascript复制sudo usermod -aG docker bitwarden
创建bitwarden目录:
代码语言:javascript复制sudo mkdir /opt/bitwarden
设置目录/opt/bitwarden
权限:
sudo chmod -R 700 /opt/bitwarden
设置目录/opt/bitwarden
的所有者为bitwarden:
sudo chown -R bitwarden:bitwarden /opt/bitwarden
3.3安装
下载安装脚本
代码语言:javascript复制curl -Lso bitwarden.sh "https://func.bitwarden.com/api/dl/?app=self-host&platform=linux" && chmod 700 bitwarden.sh
运行脚本
代码语言:javascript复制./bitwarden.sh install
完善信息
- Enter the domain name for your Bitwarden instance:输入你的域名
- Do you want to use Let’s Encrypt to generate a free SSL certificate? (y/n):一般选择y,然后你需要输入你的邮箱用来申请证书。
- Enter the database name for your Bitwarden instance (ex. vault):输入vault即可。
- Enter your installation id:到https://bitwarden.com/host取获得Id&Key。
点击submit即可得到
- Enter your installation key:同installation id获取方式。
- Enter your region (US/EU) [US]:默认即可。
然后会生成密钥,等待即可。
启动项目,初次启动会拉取镜像,速度取决于你的网络,耐心等待即可。
代码语言:javascript复制./bitwarden.sh start
3.4配置环境变量(必须)
有一些环境变量未在bitwarden.sh脚本中配置,所以要我们手动进行配置。
编辑配置文件
代码语言:javascript复制cd ~
vim ./bwdata/env/global.override.env
改下面的变量(必须配置,否则无法验证邮箱)
代码语言:javascript复制...
globalSettings__mail__smtp__host=<placeholder>
globalSettings__mail__smtp__port=<placeholder>
globalSettings__mail__smtp__ssl=<placeholder>
globalSettings__mail__smtp__username=<placeholder>
globalSettings__mail__smtp__password=<placeholder>
...
adminSettings__admins=
...
globalSettings__mail__smtp...=
SMTP相关信息(推荐使用Gmail邮箱)
adminSettings__admins=
管理员邮箱
改完保存以后,记得重启
代码语言:javascript复制./bitwarden.sh restart
3.5配置安装文件
安装脚本使用的文件是./bwdata/config.yml
。如果你有需求,比如换端口什么的,可以对安装文件进行修改。
cd ~ && vim ./bwdata/config.yml
修改好记得重新应用。
代码语言:javascript复制./bitwarden.sh rebuild
然后启动
代码语言:javascript复制./bitwarden.sh start
运行成功
代码语言:javascript复制Bitwarden is up and running!
===================================================
visit https://yourdomain.com
to update, run `./bitwarden.sh updateself` and then `./bitwarden.sh update`
3.6检查运行
代码语言:javascript复制docker ps
如果提示
代码语言:javascript复制CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9c6b45fb5fee bitwarden/nginx:2023.9.0 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) 80/tcp, 0.0.0.0:80->8080/tcp, :::80->8080/tcp, 0.0.0.0:443->8443/tcp, :::443->8443/tcp bitwarden-nginx
e7f46c94587e bitwarden/admin:2023.9.0 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) 5000/tcp bitwarden-admin
fa7cac7f458e bitwarden/web:2023.9.1 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) bitwarden-web
fab16c02aebd bitwarden/events:2023.9.0 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) 5000/tcp bitwarden-events
3fccfa041435 bitwarden/api:2023.9.0 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) 5000/tcp bitwarden-api
c5b2fd80339a bitwarden/mssql:2023.9.0 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) bitwarden-mssql
007246ec3836 bitwarden/icons:2023.9.0 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) 5000/tcp bitwarden-icons
c9d13f82fbb5 bitwarden/sso:2023.9.0 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) 5000/tcp bitwarden-sso
951de6f272e8 bitwarden/attachments:2023.9.0 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) bitwarden-attachments
1c52a1f5732c bitwarden/notifications:2023.9.0 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) 5000/tcp bitwarden-notifications
727921fbed50 bitwarden/identity:2023.9.0 "/entrypoint.sh" 2 minutes ago Up 2 minutes (healthy) 5000/tcp bitwarden-identity
就说明运行正常。你可以访问你的域名(https://yourdomain.com)进入web界面了!
4.使用
关于邮箱
访问之后你需要注册一个新账户然后才能登录。你必须完善SMTP的相关配置!!!要不然你验证不了邮箱也就用不了Bitwarden了。
You may now register a new account and log in. You will need to have configured smtp
environment variables (see Environment Variables) in order to verify the email for your new account.
进行注册
5.常见问题
An unhandled server error has occurred
使用docker ps查看mssql是否正常运行。此项目对内存要求较高,请务必保证满足最低内存要求。还有就是检查配置文件。
如果你无法解决此问题,夜梦推荐你使用1panel进行快速部署。