Denne bloggen vil illustrere hvordan du kan eksponere og distribuere flere containerapplikasjoner på samme port ved hjelp av belastningsbalansering.
Hvordan eksponere flere containerapplikasjoner på samme port med belastningsbalansering?
Lastbalansering eller omvendt proxy er en teknikk for å fordele trafikk fra forskjellige containere på en server. Lastbalansering kan bruke forskjellige rutingsalgoritmer, for eksempel den runde Robin -algoritmen, for å tildele tidsspam til å kjøre den første beholderen, deretter den andre beholderen, og bytt igjen tilbake til den første beholderen, og så videre. Dette kan øke applikasjonens tilgjengelighet, evne og pålitelighet.
Bruk den nevnte prosedyren for illustrasjonen.
Trinn 1: Lag dockerfile
Først må du lage en DockerFile for å containeres applikasjonen. For eksempel har vi definert instruksjonene for å containere "hoved-.gå”App:
Fra Golang: 1.8Her har vi to forskjellige “hoved-.gå”Programmer i to forskjellige kataloger. I vårt scenario vil det første programmet bruke DockerFile for å konfigurere tjenesten:
Det andre programmet har også samme dockerfile i sin katalog. Ved hjelp av denne filen har vi bygget det nye Docker -bildet "Go1-Image”Det vil bli brukt til å konfigurere den andre tjenesten i komponeringsfilen. For å lage eller bygge bildet, kan du gå gjennom vår tilknyttede artikkel:
Trinn 2: Opprett komponeringsfil
Deretter oppretter du en komponeringsfil som heter "Docker-Compose.yml”Fil som inneholder følgende instruksjoner:
Trinn 3: Lag “Nginx.Conf ”-fil
Etter det, lag "nginx.konf”Fil og konfigurere oppstrømsjenestene, lytteport av lastbalansen og definere proxy”http: // alle/”For å administrere oppstrømstjenestene:
bruker nginx;Trinn 4: Fire opp containerne
Utfør “Docker-Compose Up”Kommanderer om å skyte opp tjenestene i separate containere. Her “-skala”Alternativ brukes til å generere de to kopiene fra den første eller“Web" service:
Docker -Compose Up -Sal Web = 2
For verifiseringen, gå til utsettelseshavnen til “nginx”Service container og bekrefte om den godtar strømmen fra spesifiserte tjenester eller ikke:
Fra ovennevnte utgang kan det observeres at vi har utført flere containere eller tjenester på samme port.
Konklusjon
For å utføre eller eksponere flere containerapplikasjoner på samme port ved hjelp av en belastningsbalanse/omvendt proxy, først, opprette en "nginx.konf”Fil for å konfigurere konfigurasjonene for belastningsbalanser som oppstrøms tjenester, lytteporter og fullmakt til oppstrøms tjenesten. Konfigurer deretter belastningsbalansetjenesten i komponeringsfilen. Denne bloggen har demonstrert hvordan du kan eksponere og kjøre flere containere eller tjenester på samme port.