Helm Academy · Lektion

Lägg till en Service-template

Exponera arbetslasten genom en templatiserad Service

Lektion 3 av 413 steg

Lägg till en Service-template är en gratis lektion i Helm Academy på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Helm Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Helm Academy innehåller totalt 4 lektioner.

Därför behöver du en Service

Podar får nya IP-adresser hela tiden. En Service ger din arbetslast en stabil adress så att andra komponenter kan nå den på ett tillförlitligt sätt.

En andra mallfil

Lägg till templates/service.yaml bredvid din Deployment-mall. Helm renderar alla filer i templates, så båda levereras tillsammans.

Servicens grundstruktur

En Service börjar som vilket manifest som helst: apiVersion, kind: Service och metadata. Releasens namn håller den kopplad till den här installationen.

apiVersion: v1
kind: Service
metadata:
  name: {{ .Release.Name }}

Selectorn kopplar samman podar

En Service hittar sina podar genom en selector. Den måste matcha etiketterna på Deploymentens podar, annars går ingen trafik fram.

spec:
  selector:
    app: {{ .Release.Name }}

Välj Service-typen

Gör type konfigurerbar så att användarna kan välja ClusterIP, NodePort eller LoadBalancer. ClusterIP är det säkra standardvärdet i klustret.

type: {{ .Values.service.type }}

Ange standardtypen i values

Ge service.type ett standardvärde så att en vanlig installation fungerar direkt. Samla serviceinställningarna under en nyckel för att hålla ordning.

# values.yaml
service:
  type: ClusterIP
  port: 80

Mappa porten

port är den port som klienterna ansluter till på Servicen. Koppla den till values så att varje installation kan exponera en annan port.

ports:
  - port: {{ .Values.service.port }}

Peka på containerporten

targetPort är porten som containern lyssnar på. nginx tillhandahåller tjänsten på port 80, så trafiken från Servicen vidarebefordras dit.

ports:
  - port: {{ .Values.service.port }}
    targetPort: 80

Deklarera containerporten

För tydlighetens skull anger du porten som poden öppnar i Deploymentens containerPort. Det dokumenterar avsikten och underlättar för verktyg.

ports:
  - containerPort: 80

Den fullständiga Servicespecifikationen

Sätt ihop allt: en mallad Service vars selector matchar dina podar och vars port och typ hämtas från values.

spec:
  type: {{ .Values.service.type }}
  selector:
    app: {{ .Release.Name }}
  ports:
    - port: {{ .Values.service.port }}
      targetPort: 80

Rendera båda mallarna

Kör helm template och kontrollera att Helm skriver ut två dokument separerade med ---: din Deployment och din nya Service.

helm template web .

Snabbkontroll

En Service skickar ingen trafik till dina podar. Vad är den mest sannolika orsaken?

Sammanfattning: Exponera appen

Du lade till en Service-mall: selectorn matchar podarna, typ och port hämtas från values och targetPort pekar på containern. 🚀

Gratis att börja

Lär dig YAML 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
30
Lektioner
120

Vanliga frågor

Är lektionen ”Lägg till en Service-template” gratis?

Ja – hela texten till ”Lägg till en Service-template” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Helm Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i Helm Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Lägg till en Service-template”?

Exponera arbetslasten genom en templatiserad Service Ni övar på Helm Academy 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 Helm Academy?

Du behöver inga förkunskaper. Utbildningen i Helm Academy 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 3 av 4.

Hur lång tid tar lektionen ”Lägg till en Service-template”?

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 Helm Academy-lektionen?

Ja. Varje Helm Academy-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 Helm Academy