2015-10-08 10 views
27

Ich habe Docker Toolbox in OSX installiert und ich folge Docker's einfaches Tutorial auf deploying Nginx.Verbindung verweigert auf Nginx Docker Container

Ich habe Docker Lauf durchgeführt und bestätigt, dass mein Container erstellt wurde:

docker run --name mynginx1 -P -d nginx 
docker ps 
40001fc50719 nginx "nginx -g 'daemon off" 23 minutes ago Up 23 minutes 0.0.0.0:32770->80/tcp, 0.0.0.0:32769->443/tcp mynginx1 

aber wenn ich curl http://localhost:32770, erhalte ich einen Verbindungsfehler verweigert:

curl: (7) Failed to connect to localhost port 32770: Connection refused 

ich kämpfen, um Sieh, was ich hier verpasst haben könnte. Gibt es einen zusätzlichen Schritt, den ich durchführen muss, wenn ich OSX benutze?

+0

Überprüfen Sie nginx Protokolle und/oder Ausführlichkeit erhöhen. Wenn ich mich recht erinnere, ist dies ein Nginx-Problem, bei dem nginx versucht, dns-Lookup oder ähnliches umzukehren. – user2105103

Antwort

52

Das Problem ist, dass Ihr DOCKER_HOST nicht gesetzt ist auf localhost, müssen Sie die IP-Adresse Ihres Docker-Maschine verwenden, da Sie Docker Toolbox verwenden:

docker-machine ip default # Ihre IP-Adresse zurückgeben sollte.

Weitere Informationen finden Sie unter Docker Toolbox Docs.

+0

Spot auf. Danke, Michael. – Jonathan

0
docker-machine ip default 
xxx.docker.machine.ip 

Dann

curl http://xxx.docker.machine.ip:32770 
1

Wenn Sie unter OS X 10.10.3 Yosemite oder neuer und mit Docker für Mac, werden Sie nicht Docker-Maschine oder Docker Toolbox oder DOCKER_HOST zu befürchten haben.

Karte einfach den Port auf Fahrbefehl local-port: Container-Hafen

docker run --name my-web -p 8080:80 
Verwandte Themen