Ich kann nicht auf einen nodejs-basierten Dienst über http://localhost:8000
zugreifen, der in einem Docker-Image ausgeführt wird. Ich verwende Docker für Mac (https://docs.docker.com/docker-for-mac/)Ich kann nicht auf den im Docker ausgeführten Dienst zugreifen
Ich befolge das Tutorial hier https://nodejs.org/en/docs/guides/nodejs-docker-webapp/.
Der Server auf Port läuft 8000. Ich starte das Docker Bild mit dem folgenden:
$ docker run -p 8000:8000 -d geuis/node-server:latest
Wenn ich docker ps
laufen sehe ich:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9fa2e446918b geuis/node-server:latest "npm start" 6 seconds ago Up 5 seconds 0.0.0.0:8000->8000/tcp unruffled_lewin
Wenn ich docker exec -it 9fa2e446918b /bin/bash
ich die Docker vm zugreifen und ich kann curl http://localhost:8000
und Zugriff auf den Server aus dem Container.
Allerdings versuche ich das gleiche curl http://localhost:8000
von meinem System-Terminal und es ist nicht zugänglich.
Nicht sicher, was ich als nächstes tun muss.
Ich versuchte es mit Docker für Mac und es funktioniert. Hast du noch andere Modifikationen außer dem Hafen? – Holger
Können Sie auf den Dienst mit der Standard-Docker-IP zugreifen, .i.e http://192.168.99.100:8000? (oder eine andere IP, wenn Sie eine andere als die Standard-Adresse angegeben haben) – dchar