Wie kann ich meinen Andock-Container von meinem Host aus anpingen?

8

Ich habe einen Ubuntu Docker Container auf meinem Mac erstellt

%Vor%

Ich setze Port als 123.

Meine Container-IP ist 172.17.0.2

%Vor%

Auf meinem Mac versuche ich, meinen Container anzurufen,

Ping 172.17.0.2 , Ich habe Request Timeout für icmp_seq 0 ....

Was soll ich tun? So kann mein lokaler Rechner den Container pingen, den ich installiert habe. Habe ich eine App-Installation auf meinem Container, der ein einfaches Ubuntu-System ist, verpasst?

    
Neil 29.08.2016, 23:47
quelle

3 Antworten

11

Sie können keine Ping-Funktion verwenden oder direkt auf eine Container-Schnittstelle mit Docker for Mac zugreifen .

  

Die derzeit beste Lösung besteht darin, eine Verbindung zu Ihren Containern herzustellen   ein anderer Behälter. Gegenwärtig gibt es keine Möglichkeit, Routing bereitzustellen   zu diesen Containern aufgrund von Problemen mit OSX, die Apple noch nicht hat   aufgelöst. Wir verfolgen diese Anforderung, aber wir können nichts tun   darüber derzeit.

Docker Toolbox / VirtualBox

Beim Ausführen von Docker Toolbox, Docker Machine über VirtualBox oder einer VirtualBox-VM (wie eine Vagrant-Definition ) können Sie ein "Nur-Host-Netzwerk" und greifen Sie damit auf das Docker VMs-Netzwerk zu.

Wenn Sie die default boot2docker-VM verwenden, ändern Sie nicht die vorhandene Schnittstelle, da Sie eine ganze Reihe von Docker-Dienstprogrammen daran hindern, zu arbeiten, fügen Sie eine neue Schnittstelle hinzu.

Sie müssen außerdem das Routing von Ihrem Mac zu den Containernetzwerken über die neue IP-Adresse Ihrer VM einrichten. In meinem Fall ist der Docker-Netzwerkbereich 172.22.0.0/16 und die Host-Only-Adapter-IP auf der VM ist 192.168.99.100 .

%Vor%

Das Hinzufügen einer permanenten Route zu osx ist ein bisschen Komplexer

Dann können Sie von Ihrem Mac zu Containern gelangen

%Vor%     
Matt 30.08.2016, 01:58
quelle
1

Wenn Ihr Container eine Bash-Shell enthält, können Sie alternativ dazu über

darauf zugreifen

docker exec -it <CONTAINER ID> bash

und dann kannst du deine virtuelle IP pingen

    
Cesar Gomez Velazquez 17.04.2017 18:41
quelle
0

Setup:

PC-A a ist Docker Host, PC-B ist ein weiterer PC im Netzwerk. Um den Container des Andockers von PC-B zu pingen / darauf zuzugreifen, führe die folgenden iptables -Regeln im Host aus.

%Vor%

Hinweis: eth0 ist die Schnittstelle des Hosts und docker0 ist die virtuelle Standardbrücke von Andockfenster.

Fügen Sie jetzt eine Route in PC-B

hinzu %Vor%

ping / Access-Container-Dienste direkt.

    
Guru 29.07.2017 11:58
quelle

Tags und Links