沒有 https 加持的網(wǎng)站會(huì)逐漸地被瀏覽器標(biāo)記為不安全的,所以為網(wǎng)站添加 https 已經(jīng)變得刻不容緩。對(duì)于商業(yè)網(wǎng)站來說,花錢購買 SSL/TLS 證書并不是什么問題。但對(duì)于個(gè)人用戶來說,如果能有免費(fèi)的 SSL/TLS 證書可用將會(huì)是非常幸福的事情!Let's Encrypt 就是一個(gè)提供免費(fèi) SSL/TLS 證書的網(wǎng)站,由于其證書期限只有三個(gè)月,所以需要我們用自動(dòng)化的方式去更新證書。本文將介紹如何為通過 docker 運(yùn)行的 nginx 中的站點(diǎn)添加 https 支持,并自動(dòng)完成證書的更新。本文的演示環(huán)境為:運(yùn)行在 Azure 上的 Ubuntu 16.04 主機(jī)(此圖來自互聯(lián)網(wǎng)):
我們注重客戶提出的每個(gè)要求,我們充分考慮每一個(gè)細(xì)節(jié),我們積極的做好成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司服務(wù),我們努力開拓更好的視野,通過不懈的努力,成都創(chuàng)新互聯(lián)贏得了業(yè)內(nèi)的良好聲譽(yù),這一切,也不斷的激勵(lì)著我們更好的服務(wù)客戶。 主要業(yè)務(wù):網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)站設(shè)計(jì),小程序定制開發(fā),網(wǎng)站開發(fā),技術(shù)開發(fā)實(shí)力,DIV+CSS,PHP及ASP,ASP.Net,SQL數(shù)據(jù)庫的技術(shù)開發(fā)工程師。準(zhǔn)備環(huán)境
在 Azure 上創(chuàng)建 Ubuntu 類型的虛機(jī)事件非常容易的事情,安裝 docker 也無須贅言。比較容易忽略的是配置合適的網(wǎng)絡(luò)安全組規(guī)則,比如打開 80 和 443 端口:
還有就是配置 DNS:
創(chuàng)建一個(gè)普通的 http 站點(diǎn)
簡(jiǎn)單起見,直接使用一個(gè)鏡像中的 nodejs 應(yīng)用作為 web 站點(diǎn):
$ docker pull ljfpower/nodedemo $ docker network create -d bridge webnet $ docker run -d --restart=always --expose=3000 \ --network=webnet --name=myweb \ ljfpower/nodedemo