Von einer AWS ec2-Instanz (die ausgeführt wird docker) versuche curlich, einen von Docker-Containern gehosteten Webdienst zu verwenden.
Gegeben:
[ec2-user]$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b56fa0d76d5c $REGISTRY/$WORK/metrics:v0.1.0 "/bin/sh -c 'sh /root" 3 minutes ago Up 3 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:9000->9000/tcp insane_leakey
Ich kann den Webdienst aus dem Container heraus aufrufen:
[ec2-user]$ docker exec -it b56fa0d76d5c bash
root@b56fa0d76d5c:/# curl 'http://localhost/health'
Request is missing required query parameter 'apiName'
Aber ich kann es vom Gastgeber nicht treffen:
[ec2-user]$ curl 'http://localhost/health'
curl: (56) Recv failure: Connection reset by peer
Ich habe mir diese detaillierte Antwort auf diesen curlFehler angesehen, bin mir aber nicht sicher, wie ich dieses Problem beheben soll.
netstatauf dem Container, aber ich lief:ss -a | grep -i LISTum auszugebentcp LISTEN 0 100 ::ffff:127.0.0.1:http :::*. Wenn ich diese Ausgabe richtig gelesen habe, hört sie dann zulocalhost:80?