Forskjell mellom eksponering og porter i Docker -komponering

Forskjell mellom eksponering og porter i Docker -komponering
Docker Compose er en kjernekomponent i Docker som ofte brukes til å konfigurere applikasjonen som er utført på flere containere. Docker-Compose brukes stort sett for å konfigurere tjenestene til containere i "Yaml”Fil. Ulike nøkler brukes i tjenestekonfigurasjonen, "avdekke”Og“Porter”Brukes spesielt for å spesifisere eksponeringsporten for containere.

Denne oppskrivningen vil forklare forskjellen mellom portene og eksponere nøkkelen i Docker-komponering.

Forskjell mellom eksponering og porter i Docker -komponering

avdekke”Og“Porter”Keys i Docker Compose brukes til å konfigurere nettverket og eksponeringsportene for beholderen. Imidlertid brukes begge nøklene til samme formål, men nøkkelforskjellen mellom "portene" og "eksponering" er at eksponeringsnøkkelen er tilgjengelig for tjenestene som er koblet til det samme nettverket, men ikke på verten. Derimot er porter tilgjengelige og publisert på verten så vel som på det tilkoblede nettverket.

Kontrollere forskjellen mellom "eksponering" og "porter" -nøkler i docker-komponering praktisk talt

For å sjekke forskjellen mellom eksponering og porter nøkkel praktisk, gå gjennom de listede eksemplene:

  • Bruke "Porter”Nøkkel i Docker-Compose-filen
  • Bruke "avdekke”Nøkkel i Docker-Compose-filen

Eksempel 1: Bruk “Ports” -tasten i Docker-Compose-filen

Porter”Nøkkel brukes til å publisere beholderen på vertsmaskinen. Disse containerne er tilgjengelige for alle tjenester som utfører på verten også på et tilkoblet nettverk.

For å bruke “Portene” -tasten i Docker Compose, sjekk ut de gitte instruksjonene.

Trinn 1: Lag en “Docker-Compose.yml ”

Lage en "Docker-Compose.yml”Fil og lim inn kodeblokken nedenfor i filen:

versjon: "3"
tjenester:
Web:
Bilde: Nginx: Siste
Porter:
- 8080: 80

I følge ovennevnte utdrag:

  • Web”Tjenesten er konfigurert i“Docker-Compose.yml”Fil.
  • bilde”Definerer basisbildet for komponeringsbeholderen
  • Porter”Spesifiser eksponeringsporten til beholderen på et nettverk og vert:

Trinn 2: Start containere

Deretter lager du og skyter opp komponeringsbeholderen ved hjelp av "Docker-Compose Up”Kommando:

> Docker -Compose Up -D

Trinn 3: Listekomponeringsbeholder

Liste opp beholderen og bekreft den utsatte porten til beholderen. Fra utgangen kan den observere at vi har publisert containeren på verten:

> Docker-Compose Ps

Eksempel 2: Bruk “Expose” -tasten i Docker-Compose-filen

Å bruke eksponeringsnøkkelen i “Docker-Compose.yml”Fil, ta en titt på oppgitte instruksjoner.

Trinn 1: Lag en “Docker-Compose.yml ”

Konfigurer nå "Web”Tjeneste for å utsette port 80 ved hjelp av“avdekke”Nøkkel. Her har vi ikke definert noe nettverk for beholderen:

versjon: "3"
tjenester:
Web:
Bilde: Nginx: Siste
avdekke:
- 8080: 80

Trinn 2: Fyr opp beholderen

Neste, opprette og starte Compose Container for å kjøre webtjeneste ved hjelp av den oppgitte kommandoen:

> Docker -Compose Up -D

Trinn 3: Listekomponeringsbeholder

Liste opp komponeringsbeholderen og sjekk eksponeringsporten til beholderen. Fra utdataene nedenfor kan du observere at beholderen bare er tilgjengelig på port 80 på et standard valgt nettverk, men ikke på vert:

> Docker-Compose Ps

Vi har definert skillet mellom “avdekke”Og“Porter”Nøkler i Docker komponerer.

Konklusjon

avdekke”Og“Porter”Brukes begge til å spesifisere eksponeringsporten til beholderen for å kjøre definerte tjenester. Den største forskjellen mellom disse to nøklene er at "porter" er publisert og tilgjengelig på vertsmaskinen og også på det spesifiserte nettverket, mens "Expose" bare er publisert på det definerte nettverket og får tilgang til av tjenester som kjører på samme nettverk. Denne oppskrivningen demonstrerte skillet mellom "porter" og "eksponering" i Docker-komponering.