2015-09-02 9 views
5

ich Docker bin sehr neu, und ich versuche, das Standard-tomcat Bild zu laufen. Ich sehe, dass der Container läuft, aber wenn ich versuche, es aus meinem Webbrowser zu schlagen, bekomme ich "CONNECTION REFUSED".Kann tomcat in Docker verbinden läuft (Connection refused)

Was ist hier los?

Einzelheiten

Ich habe die Docker Toolbox auf meinem Windows 7-PC installiert. Ich habe meine boot2docker-VM von einer älteren Version von boot2docker migriert. (Es habe nicht viel drauf ... nur das „Hallo Welt“ Bild.)

Im Docker Quickstart-Terminal, konnte ich meine neue tomcat Behälter mit folgendem Befehl starten:

docker run -i -p 8080:8080 --rm tomcat:8-jre8 

konnte ich, dass Kater überprüfen ist und läuft mit den folgenden Befehlen:

docker ps 
docker exec -i <containerId> bash 

Dann in der bash-Shell:

curl localhost:8080 

Von diesem Curl bekomme ich die erwartete HTML-Antwort zurück.

Allerdings, wenn ich den curl Befehl aus dem Docker Quickstart-Terminal direkt ausführen:

curl localhost:8080 

... ich "Verbindung abgelehnt".

Jetzt ist hier etwas rätselhaft ... wenn ich

boot2docker ip 

laufen ... es mir einen Fehler gibt, dass „boot2docker-vm“ läuft nicht. Wie kann mein Container ausgeführt werden, wenn die boot2docker-VM inaktiv ist? Da passiert etwas, das ich wirklich nicht verstehe.

Wenn ich „boot2docker up“ laufen, ich bin in der Lage eine IP-Adresse zu bekommen, aber ich kann immer noch nicht tomcat Zugriff von dieser IP-Adresse.

+0

ich glaube, Sie könnten Hafen von boot2docker-vm zu Ihrem Host-Rechner weiterleiten müssen. – rohitkadam19

+0

Ich öffnete Oracle VM VirtualBox Manager, und es sieht so aus, als ob ich zwei VMs habe ... eine namens boot2docker, die gestoppt wird, und eine namens "default", die ausgeführt wird. Soll es 2 VMs geben? Oder liegt das daran, dass ich von der alten boot2docker-Version migriert bin? Sollte ich beide löschen und make2docker einen neuen erstellen lassen? Wie kann ich machen, dass boot2docker standardmäßig das Richtige tut, damit ich mich nicht mit den Einstellungen in VirtualBox herumschlagen muss? – RMorrisey

+1

würde ich sagen, alles sauber machen. Und ja, wenn Sie Boot2docker unter Windows und Mac installieren, gibt es Ihnen VM und in diesem VM Docker-Dämon läuft. Boot2docker sollte im aktiven Zustand sein. – rohitkadam19

Antwort

14

Sie verwenden docker toolbox. Der boot2docker wurde entzogen. Jetzt wird jede Docker-Daemon (VM) verwaltet von Docker Machine

Um zu sehen, welche VMs ausführen, verwenden Sie den Befehl

docker-machine ls 

Es zeigt Ihnen den Standard VM auf dem System läuft zusammen mit seinem IP-Adresse und Sie können Tomcat Zugriff von dieser IP auf Port 8080. Lesen Sie mehr über docker-Maschine, um zu sehen, wie mehrere VMs verwalten usw.

+0

Danke Sachin, du hast gerade meinen Tag gemacht! :) – jayeff

+0

Mein Vergnügen @jayeff :) :) –

Verwandte Themen