docker0和自定义网络肯定不通,我们使用自定义网络的好处就是网络隔离:
大家公司项目部署的业务都非常多,假设我们有一个商城,我们会有订单业务(操作不同数据),会有 订单业务购物车业务(操作不同缓存)。如果在一个网络下,有的程序猿的恶意代码就不能防止了,所 以我们就在部署的时候网络隔离,创建两个桥接网卡,比如订单业务(里面的数据库,redis,mq,全 部业务 都在order-net网络下)其他业务在其他网络。
那关键的问题来了,
如何让 tomcat-net-01 访问 tomcat1
启动默认的容器,在docker0网络下
docker run -d -P --name tomcat01 tomcat
docker run -d -P --name tomcat02 tomcat
查看当前的容器
我们来查看下network帮助
发现一个命令 connect
docker network --help
测试一下!
打通mynet-docker0
命令 docker network connect [OPTIONS] NETWORK CONTAINER
docker network connect mynet tomcat01
tomcat01 可以ping通 tomcat-net-01
tomcat02 不可以ping通 tomcat-net-01
结论
如果要跨网络操作别人,就需要使用 docker network connect [OPTIONS] NETWORK CONTAINER 连接