2016-01-05 10 views
9

Ich muss meinen DB-Container mit meinem Server-Container verbinden. Jetzt nur noch rot ich über den Legacy-Parameter --link, dieDocker: was ist das Äquivalent der Legacy - Link-Parameter

$> docker run -d -P --name rethinkdb1 rethinkdb 
$> docker run -d --link rethinkdb:db my-server 

perfekt funktioniert aber, wenn diese Parameter schließlich fallen gelassen werden, wie würde ich tun, so etwas wie die oben?

+1

Die Dokumentation besagt, dass Sie stattdessen [this] (https://docs.docker.com/engine/userguide/networking/) verwenden sollten. – jwodder

+0

vielen dank, ich denke ich bekomme es jetzt. Wenn Sie zwei Container demselben Netzwerk hinzufügen, wird ihre '/ etc/hosts' -Datei automatisch aktualisiert, richtig –

Antwort

12

Die docs sagt stattdessen den docker network Befehl zu verwenden (die Docker verfügbar ist seit 1.9.0 - 2015-11-03)

Statt

$> docker run -d -P --name rethinkdb rethinkdb 
$> docker run -d --link rethinkdb:rethinkdb my-server 

Sie jetzt

$> docker network create --name my-network 
$> docker run -d -P --name rethinkdb1 --net=my-network rethinkdb 
$> docker run -d --net=my-network my-server 
verwenden

Beachten Sie, dass in dem neuen Formular Container-Namen verwendet werden, während Sie zuvor einen Alias ​​ definieren konnten.

Wenn zwei Container Teil desselben Netzwerks sind, wird ihre /etc/hosts-Datei aktualisiert, sodass Sie die Containernamen anstelle ihrer IP-Adressen verwenden können.