CodeBlanks Logo Icon CodeBlanks

Secret türleri

Opaque ve docker-registry Secret türlerini öğrenirsin.

Secret türleri

Secret'ın type alanı içeriğin biçimini belirler ve Kubernetes bazı türleri doğrular:

  • Opaque (generic): serbest anahtar-değer; en yaygını.
  • kubernetes.io/tls: tls.crt ve tls.key; Ingress TLS için.
  • kubernetes.io/dockerconfigjson: özel registry'den image çekmek için.
  • kubernetes.io/service-account-token: ServiceAccount belirteci.
kubectl create secret tls web-tls --cert=sertifika.crt --key=anahtar.key
kubectl create secret docker-registry ghcr-giris \
  --docker-server=ghcr.io --docker-username=ali --docker-password="$GHCR_TOKEN"

imagePullSecrets

Registry Secret'ı pod spec'inde imagePullSecrets ile verilir. Aynı namespace'teki tüm pod'lar için ServiceAccount'a da eklenebilir:

    spec:
      imagePullSecrets:
        - name: ghcr-giris
      containers:
        - name: api
          image: ghcr.io/ali/api:1.0

kubectl patch serviceaccount default -p '{"imagePullSecrets":[{"name":"ghcr-giris"}]}'

Uygulama Özel registry'den çek

Bir pod YAML'ı yaz: adı api; imagePullSecrets altında ghcr-giris; container adı api, image ghcr.io/ali/api:1.0.

Başlangıç kodu

terminal
# buraya yaz

Örnek çözüm

terminal
apiVersion: v1
kind: Pod
metadata:
  name: api
spec:
  imagePullSecrets:
    - name: ghcr-giris
  containers:
    - name: api
      image: ghcr.io/ali/api:1.0

Beklenen çıktı

pod/api created
NAME   READY   STATUS    RESTARTS   AGE
api    1/1     Running   0          11s

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Özel bir registry'den image çekmek için pod hangi alanla Secret'a başvurur?

  • registrySecret
  • imagePullSecrets Doğru cevap
  • envFrom
  • volumes

Açıklama: Secret kubernetes.io/dockerconfigjson türünde olmalıdır.

2 TLS türünde Secret oluştur.

Soru
kubectl create secret ____ web-tls --cert=sertifika.crt --key=anahtar.key
Cevap
kubectl create secret tls web-tls --cert=sertifika.crt --key=anahtar.key

Açıklama: tls türü tls.crt ve tls.key anahtarlarını oluşturur.

3 Türleri eşleştir.

Kavram Anlamı
Opaque Serbest anahtar-değer
kubernetes.io/tls Sertifika ve anahtar
dockerconfigjson Registry girişi
service-account-token ServiceAccount belirteci

Orta seviye bölümündeki tüm dersler