跳至內容

設定網域名稱

您可以自訂個別 Knative 服務的網域,或為叢集上建立的所有服務設定全域預設網域。預設情況下,路由的完整網域名稱是 {route}.{namespace}.svc.cluster.local

設定單一 Knative 服務的網域

如果您想要自訂個別服務的網域,請參閱關於 DomainMapping 的文件。

設定叢集上所有 Knative 服務的預設網域

您可以修改 config-domain ConfigMap 來變更叢集上所有 Knative 服務的預設網域。

程序

  1. 在您的預設文字編輯器中開啟 config-domain ConfigMap

    kubectl edit configmap config-domain -n knative-serving
    
  2. 編輯檔案,將 svc.cluster.local 取代為您想要使用的網域,然後移除 _example 鍵並儲存您的變更。在此範例中,knative.dev 設定為所有路由的網域

    apiVersion: v1
    data:
      knative.dev: ""
    kind: ConfigMap
    [...]
    

如果您有現有的部署,Knative 會調解對 ConfigMap 所做的變更,並自動更新所有已部署服務和路由的主機名稱。

驗證步驟

  1. 將應用程式部署到您的叢集。
  2. 擷取路由的 URL

    kubectl get route <route-name> --output jsonpath="{.status.url}"
    

    其中 <route-name> 是路由的名稱。

  3. 觀察您已設定的自訂網域。

發佈您的網域

若要讓您的網域可公開存取,您必須更新您的 DNS 提供者,以指向您的服務入口的 IP 位址。

  1. 為命名空間和自訂網域建立指向入口 IP 位址的萬用字元記錄,這將允許相同命名空間中多個服務的主機名稱運作,而無需建立額外的 DNS 項目。

    *.default.knative.dev                   59     IN     A   35.237.28.44
    
  2. 建立 A 記錄,將完整網域名稱指向您的 Knative 閘道的 IP 位址。必須為建立的每個 Knative 服務或路由執行此步驟。

    helloworld-go.default.knative.dev       59     IN     A   35.237.28.44
    
  3. 在網域更新傳播後,您可以使用已部署路由的完整網域名稱來存取您的應用程式。

我們使用分析和 Cookie 來了解網站流量。關於您使用我們網站的資訊會與 Google 分享,以達到該目的。瞭解更多。