Questo blog illustrerà come esporre e distribuire più applicazioni di container sulla stessa porta utilizzando il bilanciamento del carico.
Come esporre più applicazioni di container sulla stessa porta con bilanciamento del carico?
Il bilanciamento del carico o il proxy inverso è una tecnica per distribuire il traffico da diversi contenitori su un server. Il bilanciamento del carico può utilizzare diversi algoritmi di routing, come l'algoritmo rotondo di Robin, per allocare il tempo spam per eseguire il primo contenitore, quindi il secondo contenitore, e tornare al primo contenitore, e così via. Ciò può aumentare la disponibilità, la capacità e l'affidabilità dell'applicazione.
Per l'illustrazione, utilizzare la procedura menzionata.
Passaggio 1: crea Dockerfile
Innanzitutto, crea un fikerfile per containerizzare l'applicazione. Ad esempio, abbiamo definito le istruzioni per il contenitore "principale.andare"App:
Da golang: 1.8Qui, abbiamo due diversi "principale.andare"Programmi in due diverse directory. Nel nostro scenario, il primo programma utilizzerà Dockerfile per configurare il servizio:
Il secondo programma ha anche lo stesso Dockerfile nella sua directory. Utilizzando questo file, abbiamo creato la nuova immagine Docker "image go1"Verrà utilizzato per configurare il secondo servizio nel file compose. Per creare o costruire l'immagine, puoi passare attraverso il nostro articolo associato:
Passaggio 2: creare un file di commento
Successivamente, crea un file di composizione chiamato "docker-compose.YML"File che contiene le seguenti istruzioni:
Passaggio 3: crea “nginx.FILE CONF ”
Dopodiché, crea il "nginx.conf"File e configurare i servizi a monte, la porta di ascolto del bilanciamento del carico e definire il proxy"http: // all/"Per gestire i servizi a monte:
utente nginx;Passaggio 4: accendi i contenitori
Eseguire il "Docker-Opse Up"Comando per accendere i servizi in contenitori separati. Qui "-scala"L'opzione viene utilizzata per generare le due repliche del primo o"ragnatela" servizio:
Docker -Opse Up -Scale Web = 2
Per la verifica, vai alla porta esponente del "nginx"Container di servizio e verifica se accetta il flusso dai servizi specificati o meno:
Dall'output sopra offerto, si può osservare che abbiamo eseguito con successo più contenitori o servizi sulla stessa porta.
Conclusione
Per eseguire o esporre le applicazioni di più contenitori sulla stessa porta utilizzando un bilanciamento del carico/proxy inverso, prima, creare un "nginx.conf"File per configurare le configurazioni del bilanciamento del carico come servizi di upstreaming, porte di ascolto e proxy per montare il servizio. Quindi, configurare il servizio di bilanciamento del carico nel file di composizione. Questo blog ha dimostrato come esporre ed eseguire più contenitori o servizi sulla stessa porta.