[Cloud Run 教學] 如何串接 DNS 名稱解析? 免費 SSL 憑證和HTTP Redirect HTTPS 教學

Cloud Run 接 DNS 的功能非常簡單,

除了幫你把網域解析到 Cloud Run 的網址,

還幫你做 HTTP Redirect 到 HTTPS,

你不需要額外使用 Load Balancer 或 Nginx 來 Redirect,

至於 HTTPS 不是要有 SSL 憑證嗎?

有的,GCP 一樣提供免費而且自動續約的憑證,

而且是 Google 自己的根憑證機構發行的憑證,

整個超方便!

當然你也可以使用自己的憑證喔!(不過要使用 Google Load Balancer)

這裡提供設定 DNS 名稱解析的方法。

假設我們已經做好一個 Cloud Run,

就可以直接點擊 Manage Custom Domains:

然後再點擊 Add Mapping:

你先選擇要解析的 Cloud Run 服務,

一方會看到有三種方法可以選擇,

我們就直接選 Cloud Run Domain Mappings:

接下來要選擇解析的網域,

如果你還沒驗證過網域,只會看到 Verify a new domain,

像我這邊有一堆網域,

大多是 blogspot.com 的,是 Google 的部落格服務 Blogger 的網域。

關於網域驗證的說明,可以參考驗證網站擁有權這篇文章

選好主網域之後,再輸入子網域:

按繼續之後,第三步驟直接按 Done 即可。

但是還沒做完喔!

回到 Domain Mappings 的畫面,

你會看到它一直在轉圈圈,

它提示你要去設定 DNS 的對應:

但是要怎麼設呢?

你看到右邊 Actions 的三個小點,

有一個 DNS records:

點擊之後會看到提示你要設定 CName,

要把你的網域解析到 ghs.googlehosted.com 這個網址:

那我們就直接去設定 DNS 的頁面。

DNS 不一定在 GCP 上喔,這裡指的是你註冊 DNS (購買網域) 的地方,

你可能用的是 Hinet 的 DNS,或是國外的 GoDaddyNamecheap 等等。

像我是在 GoDaddy 註冊 DNS 的,但是我已經轉移管理權限到 Cloud DNS 了。

我就在我的網域直接 ADD STANDARD:

然後把 cloudrun.dongdonggcp.com 解析 CName 到 ghs.googlehosted.com 這個網域:

ghs.googlehosted.com 它可以把所有 Cloud Run 用戶的網域,

解析到各個 Cloud Run 的原始網址,

你也不需要設定什麼 Cloud Run 的 IP (因為沒有特定的 IP)

,非常神奇。

設定好之後,你可以先去 Google Admin Toolbox

確認 Google 的解析結果有沒有設定正確,

看起來會像這樣:

沒問題的話,大約等 20~30 分鐘,

就會看到綠色勾勾如下:

那我開無痕模式看看網站:

成功了!

如果你的 Cloud Run 服務突然中斷,

它會顯示服務不存在:

但只要你重新部署好,

它會自動又幫你解析,完全不用重新設定 CName 喔!

另外,你也可以輸入 http://cloudrun.dongdonggcp.com

它真的會自動轉成 https 喔,超方便!

我們也可以檢查憑證的細節,

點擊「已建立安全連線」:

再點擊「憑證有效」或右方箭頭顯示憑證:

就會看到憑證的內容:

這個憑證發行單位 Google Trust Services

是 Google 自己的根憑證機構(Root Certificate Authority,Root CA),

代表自己的憑證自己發行,別人不能發行 Google 的憑證喔!

如果你原本花錢購買自己網域的憑證,

你也可以把錢省下來,是不是非常棒呢!

快來試試看吧!

Table of Contents
返回頂端