docker网络

首先docker在安装时会在host上创建三个网络,我们用docker network ls可以看到,ip a可以看到host上多了一个docker0的网卡

ip   a

 

使用docker  network  inspect  bridge/host/none 可以看到每个网络的详细信息

创建container是可以通过--network=none来指定container使用none网络,这里我们用一个很小的镜像来实验。

进入容器  docker  run  -it  --name  test  --hostname  test   --network=none  busybox   

看的出来none网络是什么都没有的,lo是本地的回环。

docker  run  -it  --name test1  --hostname  test  --network=host  busybox

host网络是和host上的网卡一样的。

docker  run  -it  --name test2  --hostname  test  --network=bridge  busybox

beidge网络,是我们启动container时默认的一个网桥,桥接到docker0上。

我们这里启动一个container,看看host上网卡有什么变化

docker  run  -dit  busybox                   ip     a

多了一个9: veth2a55a86@if8的网卡,仔细看看我们运行的container的网卡和这个网卡是相互对应的,并且是基于docker0的,

9: veth2a55a86@if8  对应  8: eth0@if9。原来bridge网络配置subnet就是172.17.0.0/16,网关172.17.0.1,就是docker0。

 

--————————————————————————————————————————————————————————————————————————————————————-

 

以上是docker自带的3个网络,下面我们来说一说自定义的网络,通过命令docker  network  create来实现

docker  network  create  --driver  brodge  mynet   这里--driver是指定通过那个驱动来创建,默认是bridge

创建成功了可以去看看host上的网卡有什么变化,发现多了一个网卡,启动容器时指定这个自定义的网卡效果和beidge是一样的,下面我们来说点不一样的。

我们现在来基于beidge来自定义网卡。使用--subnet  --gateway参数来设定自己的网段和网关

docker  network  create   --driver  bridge  --subnet  10.0.0.0/24  --gateway  10.0.0.1  mynet2

再指定mynet2网卡来启动一个container

docker  run  -it  --network=mynet2  busybox        ip  a来验证是否成功

 

—————————————————————————————————————————————————————————————————————————————————————

到现在为止docker的网络就差不多了,后面是一些container之间的通讯

我们指定上面的mynet2来启动多个container,如下图C1,C2,C3,C4他们之间是可以通讯的,但是别的网络C5想要通讯就不行了,这时怎么办,我们还有办法,

想让不同网卡的container之间通讯,我们需要为C5添加一块网卡,利用docker  network  connect命令实现

先运行一个container来看看

docker  run  -it  --network=bridge  busybox

可以看到这个只有一个eth0的网卡还是172.17.0.0网段想ping 10.0.0.0网段是不行的,我们来给他加一个网卡试试

现在就可以通信了。

  今天就写这么多了。后面还有跨主机通讯,后面再说!!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_46715997

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值