Helm Charts och Kubernetes-manifest i CI/CD
Paketera och versionshantera Kubernetes-utrullningar med Helm Charts, templatisera konfiguration per miljö och automatisera chart-utgåvor från GitHub Actions.
Helm Charts och Kubernetes-manifest i CI/CD är en gratis lektion i DevOps-bootcamp på CoddyKit. Detta är lektion 4 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.
Problemet med manifestmängden
Driftsättning till Kubernetes innebär att många YAML-manifest måste skrivas: Deployments, Services, ConfigMaps och Ingresses. Att kopiera dem för varje miljö blir snabbt ohanterligt.
Helm löser detta genom att paketera manifest i ett återanvändbart, versionshanterat chart.
Vad är Helm
Helm är pakethanteraren för Kubernetes. Ett chart är ett paket med mallade manifest och standardvärden.
Chart.yaml— chartets metadata och versionvalues.yaml— standardkonfigurationtemplates/— manifestmallar
Chartstruktur
En typisk chart-katalog ser ut så här. Helm renderar mallarna med hjälp av värdena för att skapa färdig Kubernetes-YAML.
mychart/
Chart.yaml
values.yaml
templates/
deployment.yaml
service.yamlMallning med värden
Mallarna använder platshållare som hämtar värden från values.yaml. På så sätt kan en mall användas i många miljöer.
# templates/deployment.yaml
spec:
replicas: {{ .Values.replicaCount }}
image: {{ .Values.image.repository }}:{{ .Values.image.tag }}Värden per miljö
Behåll en separat värdefil för varje miljö och skicka med den vid installationen. Staging kan köra 1 replik medan produktion kör 5.
helm upgrade --install myapp ./mychart \
-f values-prod.yaml \
--namespace productionInstallera kontra uppgradera
Kommandot helm upgrade --install är idempotent: det installerar releasen om den inte finns, eller uppgraderar den om den gör det.
Detta enda kommando passar utmärkt för CI/CD eftersom det fungerar både vid den första och vid efterföljande driftsättningar.
Ange image-taggen i CI
I CI skickar ni vanligtvis in den nybyggda image-taggen (ofta commit-SHA:t) med hjälp av --set.
Detta kopplar Kubernetes-releasen till exakt det artefakt som pipelinen nyss skapade.
- run: |
helm upgrade --install myapp ./mychart \
--set image.tag=${{ github.sha }}Lintning av charts
Validera chartet före driftsättning med helm lint och rendera det med helm template för att upptäcka YAML- eller mallningsfel tidigt.
- run: helm lint ./mychart
- run: helm template myapp ./mychart -f values-prod.yamlÅterställningar med Helm
Helm spårar varje release som en numrerad revision. Om en driftsättning går fel kan Ni återställa den direkt.
Detta passar bra ihop med rutiner för katastrofåterställning eftersom det går snabbt och är deterministiskt.
helm history myapp
helm rollback myapp 3Paketering och publicering
Charts kan paketeras i versionsnumrerade arkiv och pushas till ett chart-arkiv eller ett OCI-register, precis som containeravbildningar.
Det gör att andra team kan använda Ert chart utifrån version.
helm package ./mychart
helm push myapp-1.2.0.tgz oci://registry.example.com/chartsEtt Helm-jobb för driftsättning
Så här sätter Ni ihop det: autentisera mot klustret, konfigurera Helm och uppgradera sedan. Azure-åtgärden setup-helm installerar CLI:t på runnern.
- uses: azure/setup-helm@v4
- run: |
helm upgrade --install myapp ./mychart \
-f values-prod.yaml \
--set image.tag=${{ github.sha }} \
--waitSnabbtest
Testa Era kunskaper om Helm i CI/CD.
Sammanfattning
Ni har lärt Er att driftsätta Kubernetes-appar med Helm.
- Charts paketerar templaterade manifest tillsammans med
values.yaml - Värdefiler per miljö konfigurerar staging respektive produktion
helm upgrade --installär det idempotenta CI-kommandot för driftsättning- Revisioner möjliggör omedelbara återställningar, och charts kan publiceras som avbildningar
Helm omvandlar råa manifest till versionshanterade, återanvändbara releaser.
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 ”Helm Charts och Kubernetes-manifest i CI/CD” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen DevOps-bootcamp, inklusive ”Helm Charts och Kubernetes-manifest i CI/CD”, 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 ”Helm Charts och Kubernetes-manifest i CI/CD”?
Paketera och versionshantera Kubernetes-utrullningar med Helm Charts, templatisera konfiguration per miljö och automatisera chart-utgåvor från GitHub Actions. 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 4 av 4.
Hur lång tid tar lektionen ”Helm Charts och Kubernetes-manifest i CI/CD”?
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
- Bygga Docker-avbildningar med Actions
- Skicka avbildningar till register
- Distribuera till Kubernetes med Actions
- Helm Charts och Kubernetes-manifest i CI/CD