2017-04-11 1 views
1

Ich habe einen Couchbase-Server-Container namens db gestartet mit --net=host Option, die Port 11210 freigibt, und jetzt muss ich einen anderen Container damit verbinden. Wenn ich die --link Option verwenden, während meine neue Container ausgeführt wird, das heißt ein:Docker: kann Container nicht verbinden in - Net = Host-Modus

docker run -d -P --name my_name --link db:db my_image 

ich:

Fehlerreaktion von Daemon: Widersprüchliche Optionen: Host-Typ Vernetzung nicht verwendet werden kann, Links. Dies würde zu undefiniertem Verhalten führen.

Wie kann ich das lösen?

Antwort

1

Sie können nicht.

Das Verknüpfen von Containern macht bei Verwendung von --net=host keinen Sinn. Wenn Sie Container verknüpfen, erstellt Docker Einträge in /etc/hosts, sodass die Container über den Namen miteinander verbunden werden können. Wenn Sie jedoch --net=host verwenden, verfügen Ihre Container nicht über eindeutige Adressen. Sie teilen sich die Host-Netzwerkumgebung.

Sie können einfach localhost verwenden, um auf Dienste zuzugreifen, die entweder in einem Container oder einer gültigen Adresse auf Ihrem Host ausgeführt werden (vorausgesetzt, Ihr Dienst ist so konfiguriert, dass er alle verfügbaren Adressen überwacht).

Verwandte Themen