Auparavant, j'utilisais la boîte à outils Docker et je pouvais utiliser docker-machine inspect <machine-name>
pour trouver l'IP de la machine Docker , afin d'afficher les pages servies par le conteneur.
J'ai effectué la mise à niveau vers le client beta docker (pour mac) et je ne trouve pas où les pages sont diffusées.
Je suppose que parce que c'est docker pur et non docker-machine, je verrais les ports exposés sur localhost. Mais ils ne sont pas ouverts. Même via kitematic, je navigue jusqu'au port exposé (80) mais je ne vois rien.
$ 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 est-il vraiment l'IP de mon conteneur? Sinon, où puis-je trouver ce qu'est l'IP? Ou ai-je un problème de mappage de port?
tapez la commande suivante et vous obtiendrez votre ip de conteneur docker
Faites défiler vers le bas et vous obtiendrez l'adresse IP sous " NetworkSettings "
la source
Docker pour Mac s'exécute sur l'adresse IP 127.0.0.1
la source
L'adresse IP est explicitement mentionnée dans la sortie de
docker ps
.En outre,
localhost
n'est pas la même chose que0.0.0.0
la source
Je crois que 127.0.0.1 est pour localhost.
Pour obtenir l'ID docker qui s'exécute sur votre Mac. Exécutez "ifconfig" dans le terminal et l'aurez dans le résultat en plus du 127.0.0.1
Surtout quelque chose comme 192.168.xy
J'espère que ça aide.
la source