Dockers(29)- 网络连通

网络连通

背景

  • 基于docker0建了两个容器tomcat01和tomcat02,网段位于172.12.0.0/16
  • 我们又新建了一个网络,网段为192.168.0.0/16,基于此网段新建了两个容器tomcat-net-01和tomcat-net-02

不同网段的容器能否相互访问,例如tomcat01能否ping通tomcat-net-01

[root@localhost ~]# docker exec tomcat01 ping tomcat-net-01
ping: tomcat-net-01: Name or service not known

如何解决

# 测试打通 tomcat01 和mynet网络

# 连通之后就是将tomcat01 放到可 mynet 网络下 
[root@localhost ~]# docker network connect mynet tomcat01
[root@localhost ~]# docker inspect mynet

# 相当于就是一个容器两个ip;比如就是阿里云服务,有一个公网ip,还有一个私网ip

# tomcat01 成功连接不同网段的 tomcat-net-01
[root@localhost ~]# docker exec -it tomcat01 ping tomcat-net-01 PING tomcat-net-01 (192.168.0.3) 56(84) bytes of data. 64 bytes from tomcat-net-01.mynet (192.168.0.3): icmp_seq=1 ttl=64 time=0.147 ms 64 bytes from tomcat-net-01.mynet (192.168.0.3): icmp_seq=2 ttl=64 time=0.062 ms ^Z64 bytes from tomcat-net-01.mynet (192.168.0.3): icmp_seq=3 ttl=64 time=0.063 ms 64 bytes from tomcat-net-01.mynet (192.168.0.3): icmp_seq=4 ttl=64 time=0.045 ms

总结

假设要跨网络操作别人,就需要使用docker network connect 连通

posted @ 2021-08-31 10:29  葛老头  阅读(62)  评论(0编辑  收藏  举报