创建文件夹,这个是存放要生成的证书位置
mkdir -p /usr/local/ca
中间的一些生成过程已经写成shell文件点击下载 提取码:m5e4
把shell文件下载后存放到/usr/local/ca目录下,给shell文件赋权然后执行
chmod +x /usr/local/ca/*.sh
./create_tls_certs.sh
有个坑要注意,如果你在其他文本编辑器里编辑了create_tls_certs.sh,再上传到服务器,可能会出现特殊字符导致执行失败如下图,所以一般修改内容是上传到服务器后再进行编辑,我的用的xshell进行vi create_tls_certs.sh时,倒是能看到有些地方是存在特殊字符逐一删除
执行后会生成一堆东西,如下图
vi /lib/systemd/system/docker.service
将ExecStart 的值设置为如下
/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock --tlsverify --tlscacert=/usr/local/ca/ca.pem --tlscert=/usr/local/ca/server-cert.pem --tlskey=/usr/local/ca/server-key.pem
systemctl daemon-reload
systemctl restart docker
默认是tcp 的,你要改成https
然后选择你放证书的文件夹,就会连接成功
如果不成功,请排查
1、tcp连接没换
2、端口不对
3、云服务器防火墙没开放端口
只要按照步骤来 肯定能连接成功,不然中间有一步弄错了就会连接不上