All Products
Search
Document Center

Container Service for Kubernetes:Gunakan domain kustom di Knative

Last Updated:Aug 22, 2026

Format nama domain default untuk Knative Service adalah {route}.{namespace}.{default-example.com}, dengan {default-example.com} sebagai akhiran domain default, yang biasanya berupa example.com. ACK mendukung domain kustom untuk konfigurasi rute yang lebih fleksibel.

Anda dapat menyesuaikan domain dengan dua cara:

  • Menyesuaikan domain secara global untuk semua Knative Service dengan mengubah ConfigMap.

  • Menggunakan anotasi knative.aliyun.com/serving-ingress untuk mengonfigurasi domain kustom secara cepat pada Knative Service tertentu.

Prasyarat

Konfigurasi domain kustom global

Untuk menerapkan akhiran domain umum ke semua Knative Service, ikuti langkah-langkah berikut.

  1. Jalankan perintah berikut untuk mengedit objek ConfigMap config-domain di namespace knative-serving.

    kubectl edit cm config-domain --namespace knative-serving
  2. Ubah file konfigurasi.

    Ganti nama domain default example.com dalam file konfigurasi dengan domain kustom, lalu simpan konfigurasinya. Dalam contoh ini, domain kustom diatur menjadi mydomain.

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: config-domain
      namespace: knative-serving
    data:
      mydomain.com: "" # Ganti example.com dengan mydomain.com. Dalam skenario nyata, ganti ini dengan domain layanan Anda sendiri.
  3. Jalankan perintah berikut untuk memverifikasi bahwa domain baru telah diterapkan:

    # Ganti helloworld-go dengan nama Knative Service Anda.
    kubectl get route helloworld-go --output jsonpath="{.status.url}" | awk -F/ '{print $3}'

    Output yang diharapkan:

    helloworld-go.default.mydomain.com

    Output ini mengonfirmasi bahwa domain kustom telah diterapkan.

  4. Perbarui rekaman DNS untuk domain Anda agar mengarah ke alamat IP gerbang Knative.

  5. Jalankan perintah berikut untuk mengakses Knative Service melalui domain kustom:

    curl http://helloworld-go.default.mydomain.com

    Output yang diharapkan:

    Hello Knative!

    Output ini mengonfirmasi bahwa Knative Service dapat diakses melalui domain kustom.

Konfigurasi domain dan path per layanan

Untuk menentukan nama domain dan path tertentu untuk Knative Service, gunakan anotasi knative.aliyun.com/serving-ingress guna langsung menetapkan nama domain dan path kustom. Sebagai contoh, knative.aliyun.com/serving-ingress: cafe.mydomain.com/coffee menetapkan nama domain cafe.mydomain.com dan path /coffee.

Contoh domain kustom

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: coffee-mydomain
  annotations:
    knative.aliyun.com/serving-ingress: cafe.mydomain.com
spec:
  template:
    spec:
      containers:
      - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:160e4dc8

Contoh domain wildcard

Pisahkan beberapa domain dengan koma.
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: coffee-mydomain
  annotations:
    knative.aliyun.com/serving-ingress: "*.mydomain.com"
spec:
  template:
    spec:
      containers:
      - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:160e4dc8

Contoh path tunggal

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: coffee-mydomain
  annotations:
    knative.aliyun.com/serving-ingress: cafe.mydomain.com/coffee
spec:
  template:
    spec:
      containers:
      - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:160e4dc8

Contoh beberapa path

Pisahkan beberapa path dengan koma.
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: coffee-mydomain
  annotations:
    knative.aliyun.com/serving-ingress: cafe.mydomain.com/coffee,cafe.mydomain.com/tea
spec:
  template:
    spec:
      containers:
      - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:160e4dc8

Menulis ulang path

Gerbang ALB mendukung penulisan ulang path. Anda dapat menulis ulang Path untuk Knative Service dengan mengonfigurasi anotasi alb.ingress.kubernetes.io/rewrite-target:. Berikut ini contoh kodenya.

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: coffee-mydomain
  annotations:
    knative.aliyun.com/serving-ingress: cafe.mydomain.com/api/coffee
    alb.ingress.kubernetes.io/rewrite-target: /coffee
spec:
  template:
    spec:
      containers:
      - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:160e4dc8

Konfigurasi domain wildcard universal

Untuk menentukan domain wildcard untuk Knative Service, atur nilai Anotasi knative.aliyun.com/serving-ingress menjadi /. Sebagai contoh, knative.aliyun.com/serving-ingress: / menunjukkan domain wildcard penuh. Berikut ini contohnya.

Hanya gerbang ALB yang didukung.

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: coffee-mydomain
  annotations:
    knative.aliyun.com/serving-ingress: "/"
spec:
  template:
    spec:
      containers:
      - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:160e4dc8

Topik terkait