2015-09-23 46 views
6

Come da docker link docs Posso solo collegarmi a un contenitore (già in esecuzione) per accedere alle porte interne di quel contenitore.collegamento di rete docker a 2 o più contenitori

Come posso collegare un container a 2 o più altri contenitori? (MongoDB e un altro servizio web nel mio caso).

(In questo momento sto esponendo porti di secondo contenitore per ospitare e quindi accesso tramite host: porta, anche possibile soluzione potrebbe essere Let two Containers getting linked to eachother.)

+1

https://stackoverflow.com/questions/30545023/how-to-communicate-between-docker-containers-via-hostname/30550990#30550990 – xuhdev

+2

Credo che si può utilizzare --link più volte per collegare a più contenitori. Ho usato le stesse molte volte. –

risposta

2

In alternativa, è può attivare la comunicazione tra container aggiungendo --icc = true alla riga di comando del daemon docker e non sarà necessario collegare i contenitori, accedendoli semplicemente utilizzando l'indirizzo IP dell'host Docker e le porte pubblicate dei contenitori.

Docker Networking

14
docker run -d --link node1:node1 --link node2:node2 --link node3:node3 -p hostport:containerport your-image 

faccio funzionare l'ordine sopra e funziona.

+1

Questa è una risposta accettata –

1

Per una soluzione facile è possibile utilizzare Docker-compose. nel file di composizione (docker-compose.yml) utilizzare l'opzione links Collegamento a contenitori in un altro servizio. Specificare sia il nome del servizio sia un alias di collegamento (SERVICE: ALIAS) o solo il nome del servizio.

container_name: 
links: 
     - node1 
     - node2 
     - node3:alias3 
     - noden