DevOps-bootcamp · Lektion

Parameterisera containeravbildningen

Koppla avbildningens repository och tagg till values

Lektion 2 av 413 steg

Parameterisera containeravbildningen är en gratis lektion i DevOps-bootcamp på CoddyKit. Detta är lektion 2 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för DevOps-bootcamp, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.

Därför gör du imagen konfigurerbar

En hårdkodad image låser alla användare till en enda version. Genom att koppla image till values kan användarna välja det repository och den tagg de behöver.

Dela upp repository och tagg

Enligt konvention lagrar chartar imagen som två fält: ett repository och en tag. När de hålls isär blir versionsuppdateringar enkla.

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

Läs kapslade värden

Du når kapslade nycklar genom att kedja punkter. Här går .Values.image.repository in i den image-map som du nyss definierade.

image: {{ .Values.image.repository }}

Sätt ihop repository och tagg

En imagereferens består av repository, sedan ett kolon och därefter taggen. Bygg ihop den i mallen så att den renderade raden blir en enda giltig sträng.

image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"

Skriv alltid taggen inom citattecken

En tagg som 1.27 kan tolkas som ett tal av YAML. Skriv taggar inom citattecken i values så att de förblir strängar och aldrig förlorar en avslutande nolla.

tag: "1.27.0"

Ange ett rimligt standardvärde för taggen

Funktionen default tillhandahåller ett reservvärde när ett värde är tomt. Ett vanligt mönster är att använda chartens appVersion som standardtagg.

{{ .Values.image.tag | default .Chart.AppVersion }}

Gör pull-policyn konfigurerbar

Låt användarna styra när Kubernetes hämtar en image på nytt genom att även göra imagePullPolicy konfigurerbar. IfNotPresent är ett säkert standardvärde.

imagePullPolicy: {{ .Values.image.pullPolicy }}

Ange standardvärde för pull-policyn

Ange standardvärdet för pull-policyn i values.yaml så att en installation fungerar utan några överskrivningar. Användarna kan fortfarande ändra den när det behövs.

image:
  pullPolicy: IfNotPresent

Det fullständiga containerblocket

Nu är containern helt datastyrd: både image och pull policy hämtas från .Values.image, och inga literaler finns kvar i mallen.

containers:
  - name: app
    image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
    imagePullPolicy: {{ .Values.image.pullPolicy }}

Skriv över vid installation

Användarna ändrar ett enskilt kapslat värde med --set. Punkterna i nyckeln motsvarar direkt trädet med dina values, så inga filer behöver redigeras.

helm install web . --set image.tag=1.28

Bekräfta den renderade imagen

Rendera med en överskrivning för att kontrollera att kopplingen fungerar hela vägen. Resultatet bör visa den valda taggen på imageraden.

helm template web . --set image.tag=1.28

Snabbkontroll

Du vill installera med en annan imagetagg utan att redigera några filer. Vad fungerar?

Sammanfattning: En konfigurerbar image

Du delade upp imagen i repository och tag, lade till en pull policy och lät användarna skriva över båda med --set. Skriv taggar inom citattecken för att undvika problem.

Gratis att börja

Lär dig DevOps-bootcamp med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
142
Lektioner
568

Vanliga frågor

Är lektionen ”Parameterisera containeravbildningen” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen DevOps-bootcamp, inklusive ”Parameterisera containeravbildningen”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.

Vad lär jag mig i ”Parameterisera containeravbildningen”?

Koppla avbildningens repository och tagg till values Ni övar på DevOps-bootcamp med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig DevOps-bootcamp?

Du behöver inga förkunskaper. Utbildningen i DevOps-bootcamp på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”Parameterisera containeravbildningen”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här DevOps-bootcamp-lektionen?

Ja. Varje DevOps-bootcamp-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. En minimal Deployment-template
  2. Parameterisera containeravbildningen
  3. Lägg till en Service-template
  4. Installera och iterera på Ert chart
← Tillbaka till DevOps-bootcamp