이전에는 Docker 툴킷을 사용하고 있었고 docker-machine inspect <machine-name>
컨테이너 내에서 제공되는 페이지를보기 위해 docker 시스템의 IP를 찾는 데 사용할 수있었습니다 .
도커 베타 클라이언트 (Mac 용)로 업그레이드했으며 페이지가 제공되는 위치를 찾을 수 없습니다.
도커 머신이 아닌 도커 순수이기 때문에 localhost에서 노출 된 포트를 볼 수 있다고 가정합니다. 그러나 그들은 열려 있지 않습니다. kitematic을 통해서도 노출 된 포트 (80)를 탐색하지만 아무것도 볼 수 없습니다.
$ 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
172.17.0.2는 실제로 컨테이너의 IP입니까? 그렇지 않은 경우 IP가 무엇인지 어디에서 찾을 수 있습니까? 아니면 포트 매핑 문제가 있습니까?