2015-03-16 34 views
26

Sto utilizzando docker-compose per eseguire un ambiente di test, costituito da circa 5 diversi contenitori. I collegamenti tra container e i volumi condivisi (volumi da) funzionano meravigliosamente. Esposto anche alcune porte alla macchina host, che funziona bene.Utilizzo di --add-host o extra_hosts con finestra mobile-comporre

Quello che mi manca è un modo per collegare alcuni dei miei server reali in questo ambiente, senza indirizzo IP hardcoding. Con docker run, è possibile utilizzare --add-host per aggiungere un'altra riga nel file /etc/hosts. C'è un modo per fare qualcosa di simile con docker-compose?

risposta

27

Ho una grande notizia: questo sarà in Compose 1.3!

sto usando nella corrente RC (RC1) in questo modo:

rng: 
    build: rng 
    extra_hosts: 
    seed: 1.2.3.4 
    tree: 4.3.2.1 
1

Questo è nel backlog delle funzionalità di Compose ma non sembra che il lavoro sia già stato avviato. Github issue.

23

https://docs.docker.com/compose/compose-file/#extra_hosts

extra_hosts - Aggiungi mappature hostname. Utilizza gli stessi valori del parametro client host --add-host.

extra_hosts: 
- "somehost:162.242.195.82" 
- "otherhost:50.31.209.229" 

Una voce con l'indirizzo IP e il nome host verrà creato in/etc/hosts all'interno di contenitori per questo servizio, ad esempio:

162.242.195.82 somehost 
50.31.209.229 otherhost 
+4

non supportato su accumulo – expelledboy

+1

Il link sembra essere rotto . Ecco quello corretto: https://docs.docker.com/compose/compose-file/#extra_hosts –

+1

Come posso mappare un nome esterno (non un IP) a un alias contenitore? –

Problemi correlati