1. docker网络简介

bridge: 桥接 【docker默认】

docker network --help

  • docker每生成一个容器,就分配给容器一个ip,同事在宿主机增加一对网卡,即docker用的虚拟接口协议,通过evth-pair,充当一个桥梁,连接各种虚拟设备,默认通过docker0网关来通信的,采用桥接模式

  • docker容器之间网络是互通的

8: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 02:42:45:be:08:ce brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
valid_lft forever preferred_lft forever
inet6 fe80::42:45ff:febe:8ce/64 scope link
valid_lft forever preferred_lft forever
155146: veth93406a5@if155145: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker_gwbridge state UP
link/ether 4e:c7:49:8e:ed:e6 brd ff:ff:ff:ff:ff:ff link-netnsid 1
inet6 fe80::4cc7:49ff:fe8e:ede6/64 scope link
valid_lft forever preferred_lft forever

2.容器之间通过容器名通信--link【一般不使用】

启动两个容器,如test01,test02

下面这种方式就是通过容器名使test01 能够ping通test02

docker -d run --name test01 --link test02 nginx
docker exec -it test01 ping test02

但如果用test02去访问test01会出现不同,因为link的本质是做了服务名与ip的映射且是单向的,所以不通,除非test02-->test01也配上--link,本质是向hosts中增加映射

通过如下命令可查到

docker network inspect 网络编号

3.自定义网络

默认启动容器,有参数--net bridge,这个就是docker0

docker run -d -P --name tomcat01 tomcat
等同于 docker run -d -P --name tomcat01 --net bridge tomcat

docker0的特点:默认,域名不能直接访问,可通过--link打通,自定义是自动开通的

docker network create --help

docker network create --driver bridge --subnet 192.168.0.0/16 --gatway 192.168.0.1 myfirstnet

--driver 指定网络模式
--subnet 指定子网掩码
--gatway 指定网关

查看创建的网络

docker network inspect myfirstnet

使用自己创建的网络

docker run -d -P --name test001 --net myfirstnet

4.不同的子网如何互联,

建立自己的网络保证不同的服务处于不同的网络中,保证网络安全性

  1. redis集群 net1 192.168.1.0
  2. mysql集群 net2 192.168.2.0
    原理:通过给容器设置两个ip,相当于向两个不同的网络各申请一个ip

docker network connect [OPTIONS] NETWORK CONTAINER [flags]

如使容器redis01与myslq01通信

docker network connect net2 redis01

上面的本质是将redis01在net2中申请了一个ip

docker network net2 inspect

©著作权归作者所有:来自51CTO博客作者mob604756e88498的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. Android 网络开发抓包工具Fiddler、tcpdump和Wireshark的使用
  2. IBM推出开源工具帮AI抵御对抗性样本***:DNN开发者的福音
  3. Microsoft Ignite 2021:Teams的相关创新和网络研讨会
  4. docker 学习第一节课
  5. 某某某NAS网络储存灾备一体化项目
  6. OPENVIDU实现网络质量检测统计
  7. 校园网络时钟系统(标准化考场时间同步)建设方案
  8. 《我与Windows Server 2008R2那点事儿》之网络故障事件
  9. 210329 CSS 媒体查询 grid布局

随机推荐

  1. 转载:android 各种xml资源的引用方式
  2. Android开发中 ListView 不能不说的几个
  3. TextView 控件使用
  4. Android――全屏显示的两种方式
  5. Android studio中相对布局组件排列方式
  6. Activity的四种启动模式和onNewIntent()
  7. Android中设置动画循环旋转的方法
  8. Android 中文API (33) ―― Checkable
  9. EditText高度的改变
  10. Mono For Android 之 配置环境