Hvordan du kan implementere en helsekontroll i docker komponer

Hvordan du kan implementere en helsekontroll i docker komponer

Healthcheck i Docker er en måte å sjekke helsen til Docker -containere. Denne funksjonen var ikke tilgjengelig i tidligere versjoner av Docker. Kommandoen for helsekontroll avgjør om beholderen fungerer og utfører søknaden. Noen ganger, i en container, kan deadlock -forhold oppstå mens du kjører applikasjonen i containere. Det kan være en situasjon der beholderen blir fjernet, men den containeriserte prosessen kjører fremdeles i en uendelig sløyfe, eller noen ressurser fungerer ikke ordentlig i beholderen. For å føre en sjekk på denne typen situasjoner, blir helsebrekkegenskapen brukt.

Denne artikkelen vil illustrere metoden for implementering av en helsesjekk i Docker -komponering.

Hvordan implementere en helsesjekk i Docker -komponering?

Healthcheck in Docker Compose brukes til å identifisere beholderens helsetilstand for å utføre tjenesten. For å implementere en helsesjekk i Docker -komponering, gå gjennom de listede trinnene.

Trinn 1: Lag DockerFile

Først må du lage en dockerfile for å containeres søknaden din. For eksempel har vi spesifisert instruksjonene for å forankre "indeks.html”Fil:

Fra Nginx: Siste
Kopierindeks.HTML/usr/aksje/nginx/html/indeks.html
Entrypoint ["nginx", "-g", "daemon off;"]

Trinn 2: Opprett komponeringsfil

Neste, lag en YAML -fil som heter “Docker-Compose.yml”. Denne filen brukes ofte til å konfigurere flere tjenester til applikasjoner i en beholder.

Her har vi brukt følgende instruksjoner:

  • versjon”Brukes til å spesifisere komponeringsfilversjonen.
  • tjenester”Brukes til å konfigurere applikasjonstjenestene i containeren.
  • Web”Er en service av søknad eller prosjekt.
  • Porter”: Nøkkel tildeler beholderens utsatte port:
versjon: "3"
tjenester:
Web:
bygge: .
Porter:
- 80:80

Trinn 3: Fire opp beholderen

Fire opp beholderen ved å bruke “Docker-Compose Up”Kommando:

Docker-Compose Up

Naviger til den utsatte porten til beholderen og sjekk om beholderen utfører eller ikke:

Trinn 4: Implementere helsekontrollen

I neste trinn kan du endre "Docker-Compose.yml”Fil for å implementere helsekontrollen i komponeringsbeholderen. For dette formålet, bruk følgende egenskaper:

  • helsesjekk”Brukes til å implementere helsekontrollen.
  • test”Nøkkel brukes til å teste beholderen. For dette formålet har vi brukt “krøll”Kommando for å få svar eller signaler fra verten.
  • intervall”Angir tidsvarigheten eller intervallet som helsebrekkprosessen vil utføre.
  • pause”Definerer tidsvarigheten for å vente på en helsesjekk. I tilfelle en feil eller en uvanlig tilstand, etter den angitte tiden, vil den returnere utgangskoden.
  • Forsøk på nytt”Brukes til å definere antall forsøk på å implementere helsekontrollen etter feil:
versjon: "3"
tjenester:
Web:
bygge: .
Porter:
- 80:80
helsesjekk:
Test: Curl -FAIL http: // localhost || Avslutt 1
Intervall: 30 -tallet
Timeout: 10s
Forsøk: 5

Trinn 5: Start container

Igjen start containerne:

Docker-Compose Up

Etter det definerte tidsintervallet, vil helsekontrollprosessen bli implementert og sjekke helsen til beholderen som uthevet nedenfor:

Trinn 6: Sjekk helsetilstand

For å sjekke beholderens helsetilstand, liste ned komponeringsbeholderen. Her kan du se tilstanden til løpende container:

Docker -Compose PS -A

Utgangen indikerer at beholderen vår er i sunn tilstand:

Dette handler om å sjekke helsetilstanden til beholderen i Docker -komponering.

Konklusjon

For å implementere helsekontrollen i Docker-Compose, oppretter du først en "Docker-Compose.yml”Fil og konfigurere applikasjonstjenestene. Etter det, bruk "helsesjekk”Eiendom for å implementere helsekontrollen. Denne egenskapen bruker forskjellige nøkler for å implementere HealthCheck, for eksempel “intervall”,“pause”,“Forsøk på nytt”, Og“test”. Denne artikkelen har illustrert metoden for å implementere Healthcheck i Docker Compose.