命名容器如何在 docker 用户创建的桥接网络中知道彼此的 IP 地址?
How does named container know each other's ip address in docker user created bridged network?
docker network create --driver bridge network1
docker run -itd --name docker1 --network network1 busybox
docker run -itd --name docker2 --network network1 busybox
docker exec -it docker1 /bin/bash
现在在 docker1 中,我可以 ping docker2
/ # ping docker2
PING docker2 (172.19.0.3): 56 data bytes
64 bytes from 172.19.0.3: seq=0 ttl=64 time=0.056 ms
我以为在/etc/hosts中添加了这个条目,但它不是
/ # cat /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
172.19.0.2 841c0dc99115
docker1怎么知道docker2的ip地址?
Docker 通过 Docker 守护程序使用的内部 dns 服务器解析名称您可以通过 cat /etc/resolv.conf
检查 dns 地址以了解更多信息您可以阅读 here
docker network create --driver bridge network1
docker run -itd --name docker1 --network network1 busybox
docker run -itd --name docker2 --network network1 busybox
docker exec -it docker1 /bin/bash
现在在 docker1 中,我可以 ping docker2
/ # ping docker2
PING docker2 (172.19.0.3): 56 data bytes
64 bytes from 172.19.0.3: seq=0 ttl=64 time=0.056 ms
我以为在/etc/hosts中添加了这个条目,但它不是
/ # cat /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
172.19.0.2 841c0dc99115
docker1怎么知道docker2的ip地址?
Docker 通过 Docker 守护程序使用的内部 dns 服务器解析名称您可以通过 cat /etc/resolv.conf
检查 dns 地址以了解更多信息您可以阅读 here