Peta dunia

 

EN: Read in English

Dunia K4: Nota, Loker & Pakej

ConfigMap: nota di dinding

Anda akan belajar: simpan tetapan dalam ConfigMap dan baca sebagai env var atau fail.

Teks BM belum disemak oleh penutur asli.

Disemak dengan Kubernetes 1.37 pada 31 Okt 2026

Masalahnya

Anda di sini: kluster kind-dev namespace default
kubectl exec jalankan printenv GREETING dalam dulang shop. Ia cetak Selamat datang. Output terminal: $ kubectl exec deploy/shop -- printenv GREETING Selamat datang

Kedai anda sambut semua orang dengan Selamat datang. Bos mahu Jemput makan. Perlu bakar image baharu untuk dua perkataan? Ada cara lebih tenang.

Tengok

Tekan dua tetapan pada nota.

0 daripada 2 dijumpai

Nota di dinding gerai simpan tetapan. Tukang masak membacanya, dan resepi tak pernah berubah. Dalam Kubernetes, nota itu ialah ConfigMap: Nota tetapan yang aplikasi baca, disimpan di luar image..

Cuba

Tampal nota dari terminal. Kemudian buka kedai.

Anda di sini: kluster kind-dev namespace default
Gerai: 3. Dulang: 0 (0 sedia). Menunggu gerai: 0.
dev-control-planeBukaPengurus

Tiada dulang di sini.

dev-workerBuka

Tiada dulang di sini.

dev-worker2Buka

Tiada dulang di sini.

Masa: +0s (dipercepat)

Tengok

Tekan baris yang jadikan nota sebagai env var.

0 daripada 3 dijumpai

Dulang baca nota dengan dua cara. envFrom jadikan setiap baris satu environment variable (pemboleh ubah persekitaran). Volume jadikan setiap baris satu fail dalam /etc/notes.

Cuba

Baca nota dengan dua cara. Mula-mula env var, kemudian fail.

Anda di sini: kluster kind-dev namespace default
Gerai: 3. Dulang: 1 (1 sedia). Menunggu gerai: 0.
dev-control-planeBukaPengurus

Tiada dulang di sini.

dev-workerBuka
  • shop·cprxv
dev-worker2Buka

Tiada dulang di sini.

Masa: +0s (dipercepat)

Teka

Anda tukar nota kepada Jemput makan. Anda tunggu dua minit. Apa yang dulang nampak?

Pilih satu jawapan.

Semak

Anda di sini: kluster kind-dev namespace default
Nota baharu di-apply. Dua minit kemudian, fail kata Jemput makan, tetapi printenv masih kata Selamat datang. Output terminal: $ kubectl apply -f settings-v2.yaml configmap/settings configured $ sleep 120 $ kubectl exec deploy/shop -- cat /etc/notes/GREETING Jemput makan $ kubectl exec deploy/shop -- printenv GREETING Selamat datang

Fail sudah ikut. Env var belum. Mulakan semula dulang untuk baca semula: kubectl rollout restart deployment/shop.

Semak

Asingkan setiap fakta: env var atau fail?

Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.

      Anda berjaya!

      Kini anda boleh baca tetapan daripada ConfigMap, dengan dua cara.

      Nak tahu lebih (pilihan)

      ConfigMap muat sehingga 1 MiB. Ia bukan rahsia: sesiapa yang boleh baca ConfigMap nampak isinya. Fail yang di-mount dengan subPath tak pernah dikemas kini. immutable: true halang perubahan tanpa sengaja.

      Latihan sebenar (pilihan), hanya pada kluster kind untuk latihan:

      Misi sebenar

      1. kubectl config current-context
      2. kubectl create configmap settings --from-literal=GREETING=Hai
      3. kubectl create deployment shop --image=nginx:1.29-alpine
      4. kubectl set env deployment/shop --from=configmap/settings
      5. kubectl exec deploy/shop -- printenv GREETING
      6. kubectl delete deployment/shop configmap/settings

      0 daripada 6 langkah siap · Tanda anda disimpan.