运行环境
- Centos7
- Docker version 20.10.3, build 48d30b5
闲言少叙
注意全程root用户操作,
安装Docker,
1 |
$ curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun |
配置docker国内镜像并拉取bitwardenrs镜像,
1 2 3 4 5 6 7 8 |
$ mkdir -p /etc/docker/ $ echo "{\n'registry-mirrors': [\n'https://docker.mirrors.ustc.edu.cn'\n]\n}" > /etc/docker/daemon.json $ systemctl daemon-reload $ systemctl start docker # 把docker加入开机自启 $ systemctl enable docker # 拉取bitwardenrs镜像 $ docker pull bitwardenrs/server:latest |
如果在你的服务器上配置了上述docker镜像后docker pull依然很慢,可以试试下面几个镜像源:
- 网易 http://hub-mirror.c.163.com
- ustc https://docker.mirrors.ustc.edu.cn
- 中国科技大学 https://docker.mirrors.ustc.edu.cn
接着去你的域名托管商的DNS解析那里配置个二级域名,例如https://fvjsdf.sharpgan.com,为了安全考量可以搞个随机的,再然后推荐去腾讯云撸个免费一年的亚洲诚信SSL证书(本站的ssl证书目前就是用的这个),这里我也就不赘述了,
关于证书类型选择,这里我测试使用Nginx的是ok的,下面以腾讯云的亚洲诚信为例说明哦,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
~/Downloads/fvjsdf.sharpgan.com tree . ├── Apache │ ├── 1_root_bundle.crt │ ├── 2_fvjsdf.sharpgan.com.crt │ └── 3_fvjsdf.sharpgan.com.key ├── IIS │ ├── fvjsdf.sharpgan.com.pfx │ └── keystorePass.txt ├── Nginx │ ├── 1_fvjsdf.sharpgan.com_bundle.crt │ └── 2_fvjsdf.sharpgan.com.key ├── Tomcat │ ├── fvjsdf.sharpgan.com.jks │ └── keystorePass.txt └── fvjsdf.sharpgan.com.csr 4 directories, 10 files |
紧接着我们把上述Nginx/目录的两个证书scp到服务器上,具体细节不再赘述,然后我说说在服务器上要执行的命令,
1 2 |
$ mkdir -p /data/ssl/ $ mv 1_fvjsdf.sharpgan.com_bundle.crt /data/ssl/cert.crt && mv 2_fvjsdf.sharpgan.com.key /data/ssl/keys.key |
在域名DNS解析,ssl证书申请及上传和上述命令执行完后我们就可以来执行运行docker容器的命令了,如下,
1 2 3 4 5 6 7 8 |
$ docker run -d --name bitwarden \ -e ROCKET_TLS='{certs="/ssl/cert.crt",key="/ssl/keys.key"}' \ -e SIGNUPS_ALLOWED=true \ -e DOMAIN='https://fvjsdf.sharpgan.com:33699' \ -v /data/ssl/:/ssl/ \ -v /data/bw-data/:/data/ \ -p 33699:80 \ bitwardenrs/server:latest |
docker run执行完后可以用netstat -lnptu命令看看相应的端口起来了没有,如果端口起来了,我们就可以进入web端(上面的-e DOMAIN后面的url就是哦~)建个账号了,tips:上述33699端口可以改成443,如果你的国内服务器完成了备案的话,然后为了安全考虑你的账号建好后需要把允许注册给关掉,我们来执行下面的命令停掉docker容器再干掉它,然后启动一个不允许注册的容器,
1 2 3 4 5 6 7 8 9 10 11 12 |
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES bf27dd7c5c8f bitwardenrs/server:latest "/start.sh" 2 hours ago Up 2 hours (healthy) 3012/tcp, 0.0.0.0:33699->80/tcp bitwarden $ docker stop bf27dd7c5c8f $ docker container rm bf27dd7c5c8f $ docker run -d --name bitwarden \ -e ROCKET_TLS='{certs="/ssl/cert.crt",key="/ssl/keys.key"}' \ -e DOMAIN='https://fvjsdf.sharpgan.com:33699' \ -v /data/ssl/:/ssl/ \ -v /data/bw-data/:/data/ \ -p 33699:80 \ bitwardenrs/server:latest |
至此你可以访问比如说上述的https://fvjsdf.sharpgan.com:33699的页面来导入数据了,然后各种客户端下载走起了,我是安卓,Mac双修~(@^_^@)~
有啥疑问欢迎评论留言哈,每一条评论我都会收到邮件通知然后及时回复大家的。
终于成功了