對應自訂網域

Cloud Run 位置

Cloud Run 具有「地區性」,這表示執行 Cloud Run 服務的基礎架構位於特定地區,並且由 Google 代管,可為該地區內的所有區域提供備援功能。

選擇 Cloud Run 服務的執行地區時,請將延遲時間、可用性或耐用性需求做為主要考量。您通常可以選擇最靠近使用者的地區,但應考量 Cloud Run 服務使用的其他 GCP 產品的位置。使用分散在不同位置的 GCP 產品,可能會影響服務的延遲時間和費用。

Cloud Run 可在下列地區使用:
  • us-central1 (愛荷華州)
如果您已建立 Cloud Run 服務,即可在 GCP 主控台的 Cloud Run 資訊主頁中查看地區。

您可以使用自訂網域來取代 Cloud Run 和 Cloud Run on GKE 提供給已部署服務的預設位址。

如果服務要使用自訂網域,您可以將服務對應至自訂網域,然後更新 DNS 記錄。您可將服務對應至 example.com 等網域,或對應至 subdomain.example.com 之類的子網域。

如果您使用 HTTPS,請注意下列事項:

  • Cloud Run:當您將服務對應至自訂網域時,系統會自動發出用於 HTTPS 連線的代管憑證。請注意,佈建安全資料傳輸層 (SSL) 憑證約需耗時 15 分鐘。您無法上傳並使用自己的憑證。

  • Cloud Run on GKE:預設只能使用 HTTP。您可以安裝萬用字元 SSL 憑證,為對應至萬用字元 SSL 憑證所含網域的所有服務啟用 SSL。詳情請參閱啟用 HTTPS 相關頁面。

事前準備

除非您已經有要使用的網域,否則請購買新網域。您可以使用任何一家網域名稱註冊商,但是如果使用 Google Domains,系統會自動為 Cloud Run 驗證網域,所以您不必經歷網域驗證程序。

將自訂網域對應至服務

您可以使用 gcloud 指令列,將自訂網域對應至服務。

主控台

  1. 前往 Cloud Run 網域對應頁面:
    網域對應頁面

    請注意,當顯示視窗太小時,如果從 Cloud Run 主頁面前往「Domain Mapping」(網域對應) 頁面,畫面未顯示 [Mapping Custom Domains] (對應自訂網域) 按鈕時,您必須按一下頁面右側三點垂直刪節號圖示。

  2. 在「Domain Mapping」(網域對應) 頁面中按一下 [Add Mapping] (新增對應)

  3. 從「Add Mapping」(新增對應) 表單的下拉式清單中,選取要對應自訂網域的服務:

    新增網域對應

  4. 輸入網域名稱。

  5. 按一下 [Continue] (繼續)

  6. 僅適用於 Cloud Run (不適用於 Cloud Run on GKE):除非您是向 Google 購買網域,否則必須先驗證網域的擁有權,才能使用該網域。如果您想對應 subdomain.example.com,則需驗證 example.com 的擁有權。如要進一步瞭解驗證擁有權,請參閱網站管理員中心說明

  7. 前往網域註冊商網站,使用最後一步顯示的 DNS 記錄更新您的 DNS 記錄。您隨時都可以顯示記錄,只要在網域對應 [...] 動作選單中按一下 [DNS Records] (DNS 記錄) 即可。

  8. 按一下 [Done] (完成)。

指令列

  1. 僅適用於 Cloud Run:除非您是向 Google 購買自訂網域,否則在 Google Cloud Platform 專案中第一次使用該網域時,必須先驗證網域的擁有權。如果您必須驗證網域擁有權,請開啟網站管理員中心驗證頁面:

    gcloud domains verify BASE-DOMAIN

    其中 BASE-DOMAIN 是您要驗證的基本網域。舉例來說,如果您要對應 subdomain.example.com,則應驗證 example.com 的擁有權。

    請在「網站管理員中心」完成網域擁有權驗證。詳情請參閱網站管理員中心說明

  2. 將您的服務對應至自訂網域:

    gcloud beta run domain-mappings create --service [SERVICE] --domain [DOMAIN]
    • [SERVICE] 改成您的服務名稱。
    • [DOMAIN] 改成您的自訂網域,例如 example.comsubdomain.example.com
  3. 取得所需的 DNS 記錄資料以更新您在 DNS 供應商的 DNS 記錄,DNS 供應商就是您向其購買自訂網域的廠商:

    gcloud beta run domain-mappings describe --domain [DOMAIN]

    [DOMAIN] 改成您的自訂網域,例如 example.comsubdomain.example.com

    您需要顯示在 resourceRecords 標題底下的所有記錄。

  4. 如果您使用的是「Cloud Run on GKE」,請保留附加至 istio-ingressgateway 服務的 IP 位址,以做為靜態 IP 位址:

    gcloud compute addresses create [IP-NAME] --addresses [EXTERNAL-IP] --region [REGION]

    請將

    • [IP_NAME] 改成您要為靜態 IP 取的名稱。
    • [EXTERNAL-IP] 改成您在上一步使用 gcloud beta run domain-mapping describe 取得的 A 記錄中的 IP 位址
    • [REGION] 改成您使用的地區。

將 DNS 記錄新增到網域註冊商的系統中

將服務對應至 Cloud Run 中的自訂網域之後,接著必須更新您放在網域註冊商的 DNS 記錄。為方便作業,Cloud Run 會產生並顯示您需要輸入的 DNS 記錄。您必須將這些指向 Cloud Run 服務的記錄新增到網域註冊商那裡,以使對應生效。

  1. 使用以下方式,擷取網域對應的 DNS 記錄資訊:

    主控台

    1. 前往 Cloud Run 網域對應頁面:
      網域對應頁面

    2. 按一下服務右側三點垂直刪節號圖示,然後按一下 [DNS RECORDS] (DNS 記錄) 顯示所有的 DNS 記錄:

    選取 DNS 記錄

    指令列

    gcloud beta run domain-mappings describe --domain [DOMAIN]

    [DOMAIN] 改成您的自訂網域,例如 example.comsubdomain.example.com

    您需要顯示在 resourceRecords 標題底下的所有記錄。

  2. 在網域註冊商服務中登入您的帳戶,然後開啟 DNS 設定頁面。

  3. 前往您網域的設定頁面並找出「主機記錄」部分,然後新增您將網域對應到 Cloud Run 服務時取得的每一筆資源記錄。

  4. 將上述 DNS 記錄全部新增至您在 DNS 供應商的帳戶時:

    • 選取上一步傳回的 DNS 記錄類型:AAAAACNAME
    • 使用名稱 www 對應至 www.example.com
    • 使用名稱 @ 對應 example.com
  5. 儲存您在網域帳戶的 DNS 設定頁面中所做變更。通常這些變更只要幾分鐘就能生效,不過在某些情況下可能要耗費數小時,時間長短取決於註冊商,以及網域中任何之前 DNS 記錄的存留時間 (TTL)

  6. 前往服務的新網址 (例如 http://www.example.com),測試是否成功。請注意,如果您在 Cloud Run 中使用 https:// 進行測試,則可能需要幾分鐘的時間,讓系統自動發出 SSL 憑證後,您才能順利使用 https://

新增已驗證的網域擁有者或服務帳戶

當使用者驗證網域時,系統只會對這個使用者帳戶驗證該網域。也就是說,只有這位使用者可以新增更多使用該網域的網域對應。因此,如要讓其他使用者能新增使用該網域的對應,您必須將其他使用者新增為已驗證的擁有者。

如果必須將您網域的已驗證擁有者新增至其他使用者或服務帳戶,您可以透過「Webmaster Central」(網站管理員中心) 頁面新增權限:

  1. 在網路瀏覽器中前往以下網址:

    https://www.google.com/webmasters/verification/home

  2. 在「Properties」(屬性) 底下,按一下您要新增使用者或服務帳戶的網域。

  3. 向下捲動到「Verified owners」(已驗證擁有者) 清單,按一下 [Add an owner] (新增擁有者),然後輸入 Google 帳戶電子郵件地址或服務帳戶 ID。

    如要查看服務帳戶清單,請在 GCP 主控台中開啟「Service Accounts」(服務帳戶) 頁面:

    前往「Service Accounts」(服務帳戶) 頁面

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Cloud Run