0Pricing
DevOps Bootcamp · Lekcja

Obiekt Values i dostęp zagnieżdżony

Odczytywanie konfiguracji użytkownika głęboko w drzewie.

Obiekt Values i dostęp zagnieżdżony to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej DevOps Bootcamp, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Poznaj obiekt .Values

W szablonie obiekt .Values zawiera wszystkie ustawienia z pliku values.yaml chartu oraz wszelkie przekazane zastąpienia. Jest to drzewo konfiguracji.

Odczytywanie klucza najwyższego poziomu

Klucz najwyższego poziomu, taki jak replicaCount, staje się wartością .Values.replicaCount. Ścieżka z kropkami dokładnie odzwierciedla strukturę YAML-a. 🌳

# values.yaml
replicaCount: 3

# template
replicas: {{ .Values.replicaCount }}

Zagłębianie się w zagnieżdżone mapy

Gdy wartości są zagnieżdżone, należy łączyć kropki. Do mapy image z kluczem tag prowadzi ścieżka .Values.image.tag, w której każdy segment odpowiada jednemu poziomowi.

# values.yaml
image:
  repository: nginx
  tag: "1.27"

# template
image: {{ .Values.image.repository }}:{{ .Values.image.tag }}

Klucze rozróżniają wielkość liter

Segmenty ścieżki muszą odpowiadać kluczom YAML znak po znaku. .Values.Image nie jest tym samym co .Values.image i zwraca pusty wynik.

Brakujące klucze dają pusty wynik

Odwołanie do nieistniejącej wartości domyślnie nie powoduje błędu. Helm niczego nie wyrenderuje, co może po cichu doprowadzić do powstania nieprawidłowego YAML-a.

Klucze z myślnikami wymagają index

Składnia kropkowa nie działa dla kluczy zawierających myślniki. Należy uzyskać do nich dostęp za pomocą funkcji index, podając klucz jako ciąg znaków w cudzysłowie.

# values.yaml
service-port: 8080

# template
port: {{ index .Values "service-port" }}

Skąd pochodzą wartości domyślne

Autor chartu umieszcza rozsądne wartości domyślne w pliku values.yaml. Każdy znajdujący się tam klucz jest dostępny pod .Values, chyba że użytkownik go zastąpi.

Jak zastąpienia trafiają do .Values

Flaga --set lub plik -f użytkownika są scalane z wartościami domyślnymi przed renderowaniem. W chwili przetwarzania szablonu .Values jest ostatecznym, scalonym drzewem.

helm install web ./mychart --set replicaCount=5

Listy również znajdują się pod .Values

Lista YAML staje się wartością typu slice w obiekcie .Values. Należy iterować po niej za pomocą range, aby wyrenderować powtarzające się elementy, zamiast odczytywać ją pojedynczą ścieżką z kropkami. 🔁

# values.yaml
ports:
  - 80
  - 443

Bezpieczne ujmowanie wartości w cudzysłowy

Liczby i wartości logiczne są renderowane bez zmian, co może uszkodzić YAML. Ciągi znaków pochodzące od użytkownika należy umieszczać w funkcji quote, aby pozostały poprawnym tekstem.

tag: {{ .Values.image.tag | quote }}

Sprawdź drzewo przed użyciem

Uruchomienie helm show values dla chartu wypisuje całe drzewo wartości. Wynik ma dokładnie taki kształt, do którego odwołuje się .Values.

helm show values ./mychart

Szybkie sprawdzenie

Potrzebny jest klucz wartości o nazwie service-port, który zawiera myślnik.

Podsumowanie: drzewo Values

Wiadomo już, że .Values to scalone drzewo konfiguracji, do którego odwołuje się za pomocą ścieżek z kropkami, z uwzględnieniem wielkości liter, a funkcja index służy do obsługi nietypowych kluczy. Drzewo można sprawdzić za pomocą helm show values.

Często zadawane pytania

Czy lekcja „Obiekt Values i dostęp zagnieżdżony” jest bezpłatna?

Tak — pełny tekst „Obiekt Values i dostęp zagnieżdżony” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu DevOps Bootcamp, przejdź na CoddyKit PRO. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Co nauczysz się w „Obiekt Values i dostęp zagnieżdżony”?

Odczytywanie konfiguracji użytkownika głęboko w drzewie. Ćwiczysz DevOps Bootcamp z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć DevOps Bootcamp?

Nie wymagamy żadnego doświadczenia. DevOps Bootcamp w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Obiekt Values i dostęp zagnieżdżony”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji DevOps Bootcamp?

Tak. Każda lekcja DevOps Bootcamp zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Obiekt Values i dostęp zagnieżdżony
  2. Metadane release przez .Release
  3. Obiekty Chart i Capabilities
  4. Files, Template i kontekst główny
← Powrót do DevOps Bootcamp