Nginx per esporre i servizi di Docker Swarm a Internet?

0

Sono coinvolto nello sviluppo di un'applicazione web aziendale le cui funzionalità sono separate in microservizi distribuiti in un Docker Swarm.

Per esporre questi microservizi a Internet (ad esempio per i nostri front-end lato client), uno dei nostri microservizi è un server Web NGINX, che ascolta le richieste e le funzioni web come proxy inverso per i vari altri microservizi.

Questo approccio è una fonte di frustrazione nel nostro progetto, poiché i percorsi verso i vari servizi Docker sono scritti nella configurazione di NGINX, e quindi NGINX si caricherà correttamente solo se tutti gli altri servizi sono già in esecuzione, e anche, se qualsiasi servizio viene aggiunto, il servizio NGINX dovrà essere ricaricato.

Stiamo ora esaminando varie soluzioni aziendali per gestire la scoperta dinamica dei servizi nel NGINX (apparentemente la versione premium di NGINX gestirà questo), ma ho la sensazione che questo possa essere gestito in un modo più semplice, e che se impostiamo le cose in modo diverso, non avremmo questo problema in primo luogo.

Stiamo superplicando questo?

    
posta zxz 19.10.2017 - 14:44
fonte

1 risposta

2

Per un proxy inverso dello sciame nativo, controlla Traefik (e i documenti di configurazione dello sciame qui ). Traefik funziona come servizio docker sul nodo manager dello sciame e si aggancia in docker.socks consentendo la scoperta dinamica dei servizi. Aggiungere un servizio al proxy inverso è semplice come collegarlo alla rete mobile di Traefik e aggiungere alcune etichette nel file di composizione.

    
risposta data 19.10.2017 - 15:09
fonte

Leggi altre domande sui tag