Sobes.tech
Middle

Kubernetes-də init konteyner nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Pod içindəki xüsusi konteyner, podun əsas konteynerləri başlamadan əvvəl işini tamamlayır.

Onun məqsədi:

  • Əsas tətbiqin başlamasından əvvəl mühitin hazırlanması.
  • Konfiqurasiyaların və ya skriptlərin yüklənməsi.
  • Xarici xidmətlərin (məlumat bazaları, API-lər) hazır olmasını gözləmək.
  • Fayl sisteminin və ya icazələrin qurulması.

Əsas xüsusiyyətlər:

  • Pod spesifikasiyasında göstərilən ardıcıllıqla icra olunur.
  • Hər init-konteyner uğurla tamamlanmalıdır ki, növbəti konteyner başlasın və ya əsas konteynerlər işləməyə başlasın.
  • Əgər init-konteyner uğursuz olursa, Kubernetes podu yenidən başlatır, init-konteyner uğurla tamamlanana qədər (podun yenidən başlatma siyasətinə uyğun olaraq).
  • Ümumi volume-ə (qovluğa) çıxış imkanı var, bu da əsas konteynerlərə məlumat ötürməyə imkan verir.

YAML spesifikasiyası:

// Init-konteyner ilə pod spesifikasiyasına nümunə
apiVersion: v1
kind: Pod
metadata:
  name: my-pod
spec:
  initContainers: // Init-konteynerlərin siyahısı
  - name: init-myservice // Init-konteynerin adı
    image: my-init-image // Init-konteynerin şəkli
    command: ["sh", "-c", "echo 'Initializing...' && sleep 5"] // İcra ediləcək əmr
  containers: // Əsas konteynerlərin siyahısı
  - name: my-app // Əsas konteynerin adı
    image: my-app-image // Əsas konteynerin şəkli
    ports:
    - containerPort: 80