2017-03-10 4 views
0

Wie ein Verfahren auf Docker auf Host A von einem entfernten Host Bwie ein Prozess für den Zugriff von einem entfernten Rechner auf einem Host auf Docker läuft

betrachten ein Host A mit IP 192.168.0.3 läuft zuzugreifen oder eine Verbindung Das führt eine Anwendung auf dem Andockfenster auf Port 3999 aus. Wenn ich von Remote-Computer mit IP 192.168.0.4 in demselben Subnetz auf diese Anwendung zugreifen möchte.

Um genau zu sein, ich habe Kafka Producer auf dem Server und ich versuche, mit Kafka-Konsole-Consumer zu erhalten.

Antwort

0

Zuerst müssen Sie Docker Containers Port an den Host A binden:

Docker run -d -p 3999: 3999 kafka-Produzent

Dann müssen Sie Host A Zugriff vom Host B unter Verwendung von IP: Port

192.168.0.3:3999 
1
  • verwenden --net=host Ihre Container run und es wird Verwenden Sie den Netzwerkstack des Hosts, und Sie können eine Verbindung zu der Anwendung herstellen, die in einem Container ausgeführt wird, so wie sie direkt auf dem Host ausgeführt wird.
  • Port-Mapping, verwenden Sie die Option -p, um den Port in Ihrem Container einem Port Ihres Hosts zuzuordnen. z.B. docker run -d -p <container port>:<host port> <image>, dann können Sie eine Verbindung zu <host>:<host port> herstellen, um Ihre Anwendung innerhalb des Containers
  • Docker's built-in multi-host network zu verbinden. In früheren Versionen ist der Netzwerktreiber vom Andockkern getrennt. Sie müssen Tools von Drittanbietern wie flannel oder weave für Multi-Host-Verbindungen verwenden, aber from release 1.9, it has been merged into docker. Sie können der Anleitung folgen, um es einzurichten.

Hoffe, das ist hilfreich :-)

+0

Es funktionierte, Vielen Dank :-) –

+0

@NaveenHolla Glad :-) helfen – shizhz

Verwandte Themen