Früher habe ich das Docker-Toolkit verwendet und anhand dessen docker-machine inspect <machine-name>
die IP-Adresse des Docker-Computers ermittelt, um die Seiten anzuzeigen, die von dem Container in dem Docker bereitgestellt werden.
Ich habe ein Upgrade auf den Docker-Beta-Client (für Mac) durchgeführt und kann nicht feststellen, wo die Seiten bereitgestellt werden.
Ich nehme an, weil es Docker pur und keine Docker-Maschine ist, würde ich die exponierten Ports auf localhost sehen. Sie sind aber nicht offen. Auch per Kitematic navigiere ich durch den exponierten Port (80), sehe aber nichts.
$ docker inspect tiny_cori | jq '.[].HostConfig.PortBindings'
{
"80/tcp": [
{
"HostIp": "",
"HostPort": "80"
}
]
}
$ docker inspect tiny_cori | jq '.[].NetworkSettings.IPAddress'
"172.17.0.2"
$ curl 172.17.0.2:80/status
^C
$ docker exec -t -i tiny_cori /bin/bash
root@f1c303f60a15:/# curl localhost:80/status
{"status":"OK"}
root@f1c303f60a15:/# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1
link/sit 0.0.0.0 brd 0.0.0.0
3: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN group default qlen 1
link/tunnel6 :: brd ::
4: ip6gre0@NONE: <NOARP> mtu 1448 qdisc noop state DOWN group default qlen 1
link/gre6 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00 brd 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
26: eth0@if27: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.2/16 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::42:acff:fe11:2/64 scope link
valid_lft forever preferred_lft forever
Ist 172.17.0.2 wirklich die IP meines Containers? Wenn nicht, wo finde ich die IP? Oder habe ich ein Port-Mapping-Problem?
Geben Sie den folgenden Befehl ein und Sie erhalten Ihre Docker-Container-IP
Scrollen Sie nach unten und Sie erhalten die IP-Adresse unter " NetworkSettings "
quelle
Docker für Mac wird unter der IP-Adresse 127.0.0.1 ausgeführt
quelle
Die IP-Adresse wird in der Ausgabe an explizit erwähnt
docker ps
.Darüber hinaus
localhost
ist nicht das gleiche wie0.0.0.0
quelle
Ich glaube, dass 127.0.0.1 für localhost ist.
So ermitteln Sie die Docker-ID, die auf Ihrem Mac ausgeführt wird Führen Sie "ifconfig" im Terminal aus und haben Sie es neben 127.0.0.1 im Ergebnis
Meistens so etwas wie 192.168.xy
Ich hoffe es hilft.
quelle