溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用docker怎么獲取Let's Encrypt永久免費的SSL證書

發(fā)布時間:2021-01-04 14:29:03 來源:億速云 閱讀:372 作者:Leah 欄目:開發(fā)技術

使用docker怎么獲取Let's Encrypt永久免費的SSL證書?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

拉取鏡像

$ 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之類的

找了一圈,發(fā)現(xiàn)自己的阿里服務器正常使用,但就是步驟沒問題

于是問公司拿到域名賬戶,問騰訊客服才知道這事

當然,這跟騰訊無關,坑爹公司的鍋更大

老子干這個啥都沒有

命令

docker run --rm 的命令懂得都懂,運行完就退出,這樣能執(zhí)行個錘子自動更新ssh證書

方法一

不docker run --rm,直接docker run就好了

優(yōu)點簡單,缺點一個容器專門跑這個,太浪費資源了

方法二

定時任務跑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

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業(yè)資訊頻道,感謝您對億速云的支持。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI