docker 技术认证(docker获取Let's Encrypt永久免费SSL证书的方法)
docker 技术认证
docker获取Let's Encrypt永久免费SSL证书的方法一、起因
官方的cerbot太烦了,不建议使用还不如野蛮生长的acme.sh,而这里介绍docker运行cerbot获取Let's Encrypt永久免费SSL证书
二、选型
cerbot的证书不会自动刷新日期,但是acme.sh自带这功能,每天凌晨0:00自动检测过期域名并且自动续期
选择docker运行cerbot,是为了让服务器里尽量少配置和无意义的程序,方便管理。例如Let's Encrypt需要的Python2.7,git,pip我们都不需要装在宿主机内,容器就自己配置好了
原文 https://github.com/acmesh-official/acme.sh/wiki/Run-acme.sh-in-docker
三、拉取镜像
$ docker pull neilpang/acme.sh
以dns mode运行docker命令
$ docker run --rm -it \ -v "$(pwd)/out":/acme.sh \ -e Ali_Key="xxxxxx" \ -e Ali_Secret="xxxx" \ neilpang/acme.sh --issue --dns dns_ali -d domain.cn -d *.domain.cn
成功之后,证书会保存在out文件夹,也可以指定路径,修改上面第一行 "$(pwd)/out",改为你想要保存的路径即可
四、注意
--dns dns_ali
要根据你域名的dns模式选择,显然这里是阿里。所以前面的两项配置才是Ali_Key,Ali_Secret
Ali_Key,Ali_Secret
需要从阿里云后台获取
不知道自己域名的dns模式可以去这里查找 https://github.com/acmesh-official/acme.sh/wiki/dnsapi
如何获取域名的dns模式及相关配置,可以直接找你域名的客服
用腾讯做例子
$ docker run --rm -it \ -v "$(pwd)/out":/acme.sh \ -e DP_Id="xxxxxx" \ -e DP_Key="xxxx" \ neilpang/acme.sh --issue --dns dns_dp -d domain.cn -d *.domain.cn
腾讯这坑爹收购了DNSPod,所以是dns_dp
我一开始还以为是TX_Id,TX_Key,dns_tx之类的
找了一圈,发现自己的阿里服务器正常使用,但就是步骤没问题
于是问公司拿到域名账户,问腾讯客服才知道这事
当然,这跟腾讯无关,坑爹公司的锅更大
老子干这个啥都没有
五、命令
docker run --rm 的命令懂得都懂,运行完就退出,这样能执行个锤子自动更新ssh证书
方法一
不docker run --rm,直接docker run就好了
优点简单,缺点一个容器专门跑这个,太浪费资源了
方法二
定时任务跑docker run --rm,原文的例子就有了
#run cron job docker run --rm -it \ -v "$(pwd)/out":/acme.sh \ --net=host \ neilpang/acme.sh --cron
其实--cron是linux的crontab参数,具体用法不累赘了
喜欢用crontab的用crontab
不喜欢的看看 博文里的二
方法三
把这玩意和docker守护进程绑一起,毕竟守护进程必须开,不算浪费资源
这是acme.sh的推荐做法
同样带原文的例子
$ docker run --rm -itd \ -v "$(pwd)/out":/acme.sh \ --net=host \ --name=acme.sh \ neilpang/acme.sh daemon
六、最终结果
$ docker run --rm -itd \ -v "$(pwd)/out":/acme.sh \ -e DP_Id="xxxxxx" \ -e DP_Key="xxxx" \ neilpang/acme.sh --issue --dns dns_dp -d domain.cn -d *.domain.cn daemon
到此这篇关于docker获取Let's Encrypt永久免费SSL证书的方法的文章就介绍到这了,更多相关docker如何获取Let's Encrypt永久免费SSL证书内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
- springboot与docker(详解SpringBoot项目docker环境运行时无限重启问题)
- docker部署kafka认证(docker-compose部署zk+kafka+storm集群的实现)
- docker容器使用redis服务(docker安装redis设置密码并连接的操作)
- docker容器启动失败怎么查找原因(解决docker安装后运行hello-world报错的问题)
- docker容器里面有java运行环境吗(利用 Docker 构建简单的 java 开发编译环境的方法详解)
- docker部署go项目(Gogs+Jenkins+Docker 自动化部署.NetCore的方法步骤)
- docker-compose部署实例(详解docker-compose速度太慢解决方式)
- 群晖docker搭建代理服务(群晖NAS利用Docker容器搭建KMS激活服务器实现激活windows系统和office操作步骤)
- docker怎么设置redis(docker安装redis并以配置文件方式启动详解)
- docker容器测试环境构建(docker容器内安装TensorRT的问题)
- docker镜像配置的挂载路径(docker挂载本地目录和数据卷容器操作)
- docker查看镜像详细内容(Docker镜像分析工具dive原理解析)
- docker的漏洞(一次docker错误的耗时排查过程记录)
- docker搭建编译开发环境(Shell脚本构建Docker 半自动化编译打包发布应用操作)
- docker容器的标准使用过程(Docker容器的使用方法简单示例)
- docker容器如何更改tomcat端口(Docker方式启动tomcat访问首页出现404错误)
- ()
- 书法欣赏 宋.志南诗《绝句》(宋.志南诗绝句)
- 每周一首古诗 《绝句》(每周一首古诗绝句)
- 蓝色代表什么(蓝色代表什么性格的人)
- 红色代表什么(红色代表什么情感和含义)
- 南宋志南和尚绝句 杨柳风似庙中来(南宋志南和尚绝句)
热门推荐
- python加密和解密(python实现对输入的密文加密)
- 入门云主机推荐(怎么样购买到心仪又便宜的云主机?)
- python3.8爬虫需要的包(python爬取基于m3u8协议的ts文件并合并)
- h5移动端开发app(移动端H5唤起APP的写法实例IOS、android)
- 判断iframe是否加载完成
- 在css中用属性来实现文字环绕图片(css文字环绕图片—遇到的问题及快速解决方法)
- 安装apache服务失败怎么办(Apache安装后出现服务无法启动服务里启动出现错误代码1)
- mysql的binlog日志详解(MySQL 有关MHA搭建与切换的几个错误log汇总)
- docker 增大mysql连接数(docker中修改mysql最大连接数及配置文件的实现)
- 解决docker的tls(ssl)证书过期问题(解决docker的tlsssl证书过期问题)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9