2017-02-03 3 views
0

Nehmen wir an, ich habe zwei Docker-Netzwerke auf der gleichen Maschine. (Network-1 und Netzwerk-2)REST-Anfrage über Netzwerke

An jedem Netzwerk, habe ich Behälter. (Container-1-Netzwerk-1 und Container-1-Netzwerk-2 etc.)

Ich muss eine PUT-Anfrage von Container-1 (172.18.0.x) an Container-2 (172.19.0. x) aber ich bekomme 'Verbindung abgelehnt' weil verschiedene Netzwerke nicht miteinander kommunizieren können. Was sind meine Möglichkeiten hier? Kann ich einen Container in ein anderes Netzwerk verschieben oder Netzwerke zu einem verbinden oder Container irgendwie verbinden (in docker-compose.yml)?

Danke.

+1

Das sieht sehr ähnlich zu http://serverfault.com/q/830135/351549 – BMitch

Antwort

1

Idealerweise sollten Sie den Container jedem Netzwerk hinzufügen, in dem er mit anderen Containern kommunizieren muss, und jedes Netzwerk sollte voneinander isoliert sein. Dies ist das Standarddesign von Docker Networking.

hinzuzufügen Behälter zu einem anderen Netzwerk, zu verwenden:

docker network connect $network $container 

Eine einfachere Methode, wenn Sie viele Container haben zu verwalten, ist zu verwenden Docker compose zu definieren, welche Netzwerke jeder Behälter gehören muss. Dies automatisiert die docker network connect Befehle.

+0

Danke, irgendwelche Links, wie man es mit Docker zu automatisieren komponieren? –

+0

Docker's [Netzwerk mit Compose-Dokumentation] (https://docs.docker.com/compose/networking/) deckt diese Option gut ab. – BMitch

Verwandte Themen