两个容器之间ping容器名失败

两个容器之间ping容器名ping不通”ping: tomcat01: Name or service not known“

最直接的就是加--link,但这个方式不推荐

docker run -d -P  --name c1 --link c2 imageName

建议使用自定义网络

# --driver bridge
# --subnet 192.168.0.0/16 可以支持255*255个网络 192.168.0.2 ~ 192.168.255.254
# --gateway 192.168.0.1
[root@9527 ~] docker network create --driver bridge 
            --subnet 192.168.0.0/16 
            --gateway 192.168.0.1 mynet
26a5afdf4805d7ee0a660b82244929a4226470d99a179355558dca35a2b983ec

启动两个tomcat测试容器

[root@9527 ~] docker run -d -P --name tomcat-net-01 --net mynet tomcat

[root@9527 ~] docker run -d -P --name tomcat-net-02 --net mynet tomcat

# ping IP连接和bridge网络下一样
[root@9527~] docker exec -it tomcat-net-01 ping 192.168.0.3
PING 192.168.0.3 (192.168.0.3) 56(84) bytes of data.
....

# 现在不使用 --link,直接可以ping名字
[root@9527~] docker exec -it tomcat-net-01 ping tomcat-net-02
PING tomcat-net-02 (192.168.0.3) 56(84) bytes of data.
 ...