Ich versuche docker-compose
zu verwenden, um eine App auszuführen, die aus zwei Containern besteht: akka app und postgresql. Hier ist yaml Datei:Docker: Verbindung zum Container vom Host aus nicht möglich
version: "3"
services:
api:
image: akka-app:latest
ports:
- "9000:5000"
db:
image: postgres-db:latest
Nach dem docker-compose up
Befehl, den ich sehe, dass Container sind und laufen mit docker ps
Befehl:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
65326e5a9677 akka-app:latest "java -cp /..." 40 minutes ago Up 23 seconds 0.0.0.0:9000->5000/tcp samplecompose_api_1
1f86273c4f9a postgres-db:latest "docker-ent..." 19 hours ago Up 23 seconds 5432/tcp samplecompose_db_1
Aber wenn ich versuche, den akka-App für den Zugriff auf aus dem Host über die GET-Anfrage an 0.0.0.0:9000/status
oder localhost:9000/status
Ich bekomme zurück "weigerte Verbindung" Fehler im Postboten.
Zusätzliche Informationen:
- Docker Version 17.06.0-ce, Version
- 1.14.0, bauen c7bdf9e MacOS Sierra 10.12.5
02c1d87
"NetworkSettings": {
"Bridge": "",
"SandboxID": "5b5b322ffb0fb881317f8cb4e69b8fd887566b8c5b73940174aabace35d816f8",
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"Ports": {
"5000/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "9000"
}
]
},
"SandboxKey": "/var/run/docker/netns/5b5b322ffb0f",
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"EndpointID": "",
"Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "",
"IPPrefixLen": 0,
"IPv6Gateway": "",
"MacAddress": "",
"Networks": {
"pinpointcompose_default": {
"IPAMConfig": null,
"Links": null,
"Aliases": [
"api",
"65326e5a9677"
],
"NetworkID": "925c8379c6d5b334177d7d198d1d38e29983903474183bee5734df9d30ab9810",
"EndpointID": "c7c37f545b00c6a19863315858e93a79f10b54b5675dc2cb8704d2f2f9b2bb1c",
"Gateway": "172.18.0.1",
"IPAddress": "172.18.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:12:00:02"
}
}
}
UPDATE:
Docker-compose Ausgang:
docker-compose up
Starting samplecompose_api_1 ...
Starting samplecompose_api_1
Starting samplecompose_db_1 ...
Starting samplecompose_api_1 ... done
Attaching to samplecompose_db_1, samplecompose_api_1
db_1 | LOG: database system was shut down at 2017-07-06 08:54:56 UTC
db_1 | LOG: MultiXact member wraparound protections are now enabled
api_1 | 09:04:26.030 [default-akka.actor.default-dispatcher-3] INFO akka.event.slf4j.Slf4jLogger - Slf4jLogger started
api_1 | 09:04:27.472 [default-akka.actor.default-dispatcher-4] INFO sample-service - Bound to /0.0.0.0:5000
Können Sie auch Docker-Compose-Protokolle einfügen? – dgulabs
@ dgulabs ja. Nur 3 Minuten. Ich werde die Logs zur Hauptfrage als Update hinzufügen :) –
Ist wget localhost: 9000 scheitert auch? Könnten Sie versuchen, den Container außerhalb von docker-compose über docker run auszuführen und über "-p IP: host_port: container_port" an eine bestimmte Adresse zu binden? – dgulabs