Tilføj en Service-template
Eksponér workloaden gennem en templated Service.
Tilføj en Service-template er en gratis Helm Academy-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Helm Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Helm Academy-kurset indeholder 4 lektioner i alt.
Hvorfor du har brug for en Service
Pods får hele tiden nye IP-adresser. En Service giver din workload én stabil adresse, så andre ting pålideligt kan nå den.
En ekstra skabelonfil
Tilføj templates/service.yaml ved siden af din Deployment-skabelon. Helm genererer alle filer i templates, så begge kommer med.
Service-skelettet
En Service begynder som alle manifests med apiVersion, kind: Service og metadata. Releasens navn knytter den til denne installation.
apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}Selectoren forbinder pods
En Service finder sine pods gennem en selector. Den skal matche labels på dine Deployment-pods, ellers bliver der ikke sendt trafik.
spec:
selector:
app: {{ .Release.Name }}Vælg Service-typen
Gør type konfigurerbar, så brugerne kan vælge ClusterIP, NodePort eller LoadBalancer. ClusterIP er den sikre standard i klyngen.
type: {{ .Values.service.type }}Angiv standardtypen i values
Giv service.type en standardværdi, så en almindelig installation bare virker. Gruppér Service-indstillingerne under én nøgle for at holde det overskueligt.
# values.yaml
service:
type: ClusterIP
port: 80Tilknyt porten
port er den port, klienter opretter forbindelse til på Servicen. Kobl den til værdier, så hver installation kan eksponere en anden port.
ports:
- port: {{ .Values.service.port }}Peg på containerporten
targetPort er den port, din container lytter på. nginx leverer indhold på port 80, så trafik på Servicen videresendes dertil.
ports:
- port: {{ .Values.service.port }}
targetPort: 80Angiv containerporten
For tydelighedens skyld skal du angive den port, din pod åbner, i Deploymentens containerPort. Det dokumenterer hensigten og hjælper værktøjer.
ports:
- containerPort: 80Den komplette Service-specifikation
Sæt det hele sammen: en skabelonbaseret Service, hvis selector matcher dine pods, og hvis port og type kommer fra værdierne.
spec:
type: {{ .Values.service.type }}
selector:
app: {{ .Release.Name }}
ports:
- port: {{ .Values.service.port }}
targetPort: 80Generér begge skabeloner
Kør helm template, og bekræft, at Helm udsender to dokumenter adskilt af ---: din Deployment og din nye Service.
helm template web .Hurtigt tjek
En Service sender ingen trafik til dine pods. Hvad er den mest sandsynlige årsag?
Opsummering: Eksponér applikationen
Du tilføjede en Service-skabelon: selectoren matcher pods, type og port kommer fra værdierne, og targetPort rammer containeren. 🚀
Lær YAML med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 30
- Lektioner
- 120
Ofte stillede spørgsmål
Er lektionen “Tilføj en Service-template” gratis?
Ja — hele teksten til “Tilføj en Service-template” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Helm Academy-kurset, skal du opgradere til CoddyKit PRO. Helm Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Tilføj en Service-template”?
Eksponér workloaden gennem en templated Service. Du øver dig i Helm Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Helm Academy?
Der kræves ingen tidligere erfaring. Helm Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.
Hvor lang tid tager lektionen “Tilføj en Service-template”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Helm Academy-lektion?
Ja. Alle Helm Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- En minimal Deployment-template
- Parametrisering af container-imaget
- Tilføj en Service-template
- Installér og iterér på Deres chart