之前我們介紹了本地使用https的方法,現在有自己的domain了,可以用有公信力機構頒發的憑證了,至於怎麼取得呢?跟網域商買啊
現在來介紹佛心的憑證頒發機構,Let’s Encrypt,免費發給你一個憑證,你可以自己設定,也可以使用遵循ACME 協議的工具來幫你取得憑證。
一般直接設定上有些繁瑣,而且不會幫你自動跟新憑證,每次憑證快到期就需要自己主動跟新,所以官方推薦使用certbot來解決上述煩惱。
但是這篇文章要使用的不是certbot,而是令一個工具acme.sh,純shell scrypt寫成,簡單易用,文檔詳細豐富
取得憑證有很多方法,這邊我使用的是主機商提供的API來完成認證,以下會以cloudflare為例,如果你是別的主機商,可以在這裡查到
現在連到你的GCE內
gcloud beta compute ssh --zone "your_zone" "your_instance" --project "your_project"
接著進到cloudflare主頁的概觀,右邊往下滑就可以看到你的API key了,拿到key後在GCE輸入
docker run --rm -itd \
-v "your_cert_path":/acme.sh \
-e CF_Key="your_key" \
-e CF_Email="your_mail" \
--net=host \
--name=acme.sh \
neilpang/acme.sh daemon
就算只是shell scrypt一樣給我放在docker內~~~
acm.sh設定好了,會定時幫你跟新憑證,現在進行驗證取得第一份憑證,輸入
docker exec acme.sh --issue --dns dns_cf -d dcreater.com -d *.dcreater.com
要多少domain就放多少-d "domain"
現在只要等他跑完,我們的網站就能使用https了。
app順利上線了,這篇的目標順利達成了~~~