1. none-network
2. host-network
其实之前的章节我们都是在使用bridge网络的功能,他的使用也是广泛的复杂的。今天主要讨论另外两种network。
1. none-network看到名子你可以联想到,none 网络就是指的什么都没有的网络
容器如果挂载在这个网络下的话,那么除了 lo,是不会有其他网卡的
容器创建时,可以通过 --network=none
指定使用 none 网络。
我们创建一个容器连接到该网络:
sudo docker run -d --name test1 --network none .....
然后我们inspect一下:
但是我们发现他没有任何网络信息,然后我们进去看一下:
sudo docer exec -it test1 /bin/sh
然后允许一下ip a 看一下,除了本地回转扣啥都没有:
所以这个network-namespace是一个孤立的,除了exec方式其他方式都访问不到。
这种模式通常用于作用:创建一种容器,要求安全性高,例如存储密码,不希望其他人访问到,只要求本地自己访问一下才行。
2. host-network连接到 host 网络的容器共享 Docker host 的网络栈,容器的网络配置与 host 完全一样。可以通过 --network=host
指定使用 host 网络。
sudo docker run -d --name test1 --network host ...
docker network inspect host:
我们发现他也没有IP地址,接着我们进去容器看一下:
但是我们发现在test1里面的接口和外面linux主机里面的接口是一样的,所以我们通过host网络创建的容器是没有独立的network-namespace,他是和主机所在的namespace共享一套,所以两者一样。
注意:端口可能会有冲突
到此这篇关于Docker容器host与none网络的使用的文章就介绍到这了,更多相关Docker host与none内容请搜索软件开发网以前的文章或继续浏览下面的相关文章希望大家以后多多支持软件开发网!