查看本机IP地址docker
# ip addr 1: lo: 127.0.0.1/8 #本机回环地址 2: eth0: 172.17.90.130/20 #阿里云内网地址 3: docker0: 172.18.0.1/16 #Docker0地址,至关于路由器
查看容器内部IP地址tomcat
# docker run -d -p 80:8080 --name tomcat01 tomcat # docker exec -it tomcat01 ip addr 1: lo: 127.0.0.1 #本机回环地址 261: eth0@if262: 172.18.0.2/16 #容器内部IP地址
宿主机ping容器内部地址,能够连通网络
# ping 172.18.0.2 64 bytes from 172.18.0.2:... 64 bytes from 172.18.0.2:...
再次查看本机IP地址测试
# ip addr 1: lo: 127.0.0.1/8 #本机回环地址 2: eth0: 172.17.90.130/20 #阿里云内网地址 3: docker0: 172.18.0.1/16 #Docker0地址,至关于路由器 262: vethc96781f@if261: #对应容器的内部地址
再启动一个容器,查看容器内部IP地址阿里云
# docker run -d -P --name tomcat02 tomcat # docker exec -it tomcat02 ip addr 1: lo: 127.0.0.1 #本机回环地址 263: eth0@if264: 172.18.0.3/16 #容器内部IP地址
再次查看本机IP地址spa
# ip addr 1: lo: 127.0.0.1/8 #本机回环地址 2: eth0: 172.17.90.130/20 #阿里云内网地址 3: docker0: 172.18.0.1/16 #Docker0地址,至关于路由器 262: vethc96781f@if261: #对应容器的内部地址 264: veth2d06adc@if263: #对应容器的内部地址
测试容器之间(tomcat01 和 tomcat02)的连通code
# 容器和容器之间是能够连通的 # docker exec -it tomcat02 ping 172.18.0.2 64 bytes from 172.18.0.2:... 64 bytes from 172.18.0.2:...
全部的容器不指定网络的状况下,都是 docker0 路由的,docker 会给容器分配一个默承认用的IP。ip