Parameterisera containeravbildningen
Koppla avbildningens repository och tagg till values
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: IfNotPresentDet 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.28Bekrä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.28Snabbkontroll
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.
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
- En minimal Deployment-template
- Parameterisera containeravbildningen
- Lägg till en Service-template
- Installera och iterera på Ert chart