Come configurare i routes NGINX?

Ho 5 contenitori a lampada ( tutum/lamp ) con porte montate come segue:

 127.0.0.1:81:80 127.0.0.1:82:80 127.0.0.1:83:80 127.0.0.1:84:80 127.0.0.1:85:80 

Quello che vorrei fare è mettere un NGINX davanti a loro in modo che reindirizza ai contenitori appropriati a seconda dell'URL. Ad esempio, supponiamo che l'host IP sia 12.45.5.113 . Poi, quando visito 12.45.5.113/c1/ voglio tornare alla home page del contenitore 127.0.0.1:81:80 , quando visito 12.45.5.113/c2/ voglio tornare alla home page del contenitore 127.0.0.1:82:80 e così via così via.

Come dovrebbe essere la configuration di NGINX? Devo installare NGINX sull'host con apt-get install o potrebbe essere ansible installarlo anche come un contenitore aggiuntivo?

Penso che l'approccio più semplice è quello di lanciare nginx nel contenitore.

 docker run --port 80:80 --link c1 ... --link cn ... nginx 

con config come (può essere montato da host da --volume argomento a --volume docker run ):

 { listen 80; location /c1/ { proxy_pass http://c1; } ... location /cn/ { proxy_pass http://cn; } } 

in questo modo reindirizzerà tutte le richieste desiderate utilizzando il meccanismo di collegamento del contenitore Docker (tutte le richieste verranno instradate attraverso la networking bridge ).

Per ulteriori informazioni, vedere la documentazione di Docker: https://docs.docker.com/engine/userguide/networking/default_network/dockerlinks/#/connect-with-the-linking-system