同福

Rancher v2.5.9使用自己的SSL证书的安装方法【20210909】

介绍

介绍

Rancher/Rancher就是Rancher 2.x版本的命名,Rancher 2.x是不依赖Apache之类的web服务器运行的,因此如果我们要更换默认的非授权SSL证书不是那么简单的了。

福哥为了这个证书的问题折腾了一下午,经过各种研究尝试终于解决了问题~~

安装

原来rancher 2.x的ssl证书默认情况下是不在rancher的容器里面的,连目录都没有。。。

如果要使用自己的证书就需要自己建立这个目录,或者是通过docker的volumes映射宿主机的目录进来。

不仅如此,还得增加一个选项才可以正常启动起来。

申请证书

申请证书可以从网上搜索,有各种老外的网站可以申请,还可以通过国内的各种云申请。

福哥比较推荐的是腾讯云的SSL证书,随便申请没有任何要求,有效期一年。

home/topic/2021/0909/17/6bc6ee7c1a7e54d976beeb0f11f3b999.png

证书目录

rancher容器的证书目录在/etc/rancher/ssl/下面。

证书文件名

rancher的ssl证书文件名规则是,将rancher.tongfu.net.pem文件改成cert.pem,将rancher.tongfu.net.key文件改成key.pem。

home/topic/2021/0909/17/550a8a62eb327f31808d4875a949cf93.png

安装

福哥建立了一个证书目录/data/docker.data/rancher/ssl/,映射到rancher的/etc/rancher/ssl/目录上,以后更新证书也不需要切到容器里面操作了。

home/topic/2021/0909/17/92981d4cd6531ace1fdca537ee78a1bc.png

通过下面的命令启动rancher容器,注意ssl目录的映射以及no-cacerts参数。

docker run -tid \
--name rancher-rancher \
-h rancher-rancher \
--memory 4g \
--memory-swap -1 \
--restart unless-stopped \
-p 8086:80 \
-p 44386:443 \
-v /data/docker.data/rancher/ssl/:/etc/rancher/ssl/ \
--privileged \
rancher/rancher:v2.5.9 \
--no-cacerts

可以看到无效SSL证书的小三角变成了白色的锁了。

为什么不是黑色的锁呢?因为福哥是用hosts解析的,如果是用的DNS解析的话,就会是黑色的锁了。

home/topic/2021/0909/18/5163cc12f9083d8d0603b37abf8000da.png

总结

有的时候学习技术就是一个“试错”的过程,各种新旧版本,各种新旧教程,各种水平的文档,乱七八糟一大堆,你需要在里面找到可以使用的那个,然后你就成功了~~