介绍
介绍
Rancher/Rancher就是Rancher 2.x版本的命名,Rancher 2.x是不依赖Apache之类的web服务器运行的,因此如果我们要更换默认的非授权SSL证书不是那么简单的了。
福哥为了这个证书的问题折腾了一下午,经过各种研究尝试终于解决了问题~~
安装
原来rancher 2.x的ssl证书默认情况下是不在rancher的容器里面的,连目录都没有。。。
如果要使用自己的证书就需要自己建立这个目录,或者是通过docker的volumes映射宿主机的目录进来。
不仅如此,还得增加一个选项才可以正常启动起来。
申请证书
申请证书可以从网上搜索,有各种老外的网站可以申请,还可以通过国内的各种云申请。
福哥比较推荐的是腾讯云的SSL证书,随便申请没有任何要求,有效期一年。
证书目录
rancher容器的证书目录在/etc/rancher/ssl/下面。
证书文件名
rancher的ssl证书文件名规则是,将rancher.tongfu.net.pem文件改成cert.pem,将rancher.tongfu.net.key文件改成key.pem。
安装
福哥建立了一个证书目录/data/docker.data/rancher/ssl/,映射到rancher的/etc/rancher/ssl/目录上,以后更新证书也不需要切到容器里面操作了。
通过下面的命令启动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解析的话,就会是黑色的锁了。
总结
有的时候学习技术就是一个“试错”的过程,各种新旧版本,各种新旧教程,各种水平的文档,乱七八糟一大堆,你需要在里面找到可以使用的那个,然后你就成功了~~