docker网络模式


网络模式

Docker网络模式 配置 说明
host –net=host 容器和宿主机共享Network namespace。
container –net=container:NAME 容器和另外一个容器共享Network namespace。
none –net=none 容器有独立的Network namespace,但并没有对其进行任何网络设置,如分配veth pair 和网桥连接,配置IP等。
bridge –net=bridge 默认为该模式

默认创建3种模式

[root@node1 ~]# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
fa18c3cc657d        bridge              bridge              local
c1196f6c46ca        host                host                local
c20416a61dd3        none                null                local

# 手动创建一个bridge网络
[root@node1 ~]# docker network create test
1ed592b9d91ae8c49f5de4b975e5adb104264bf3b03973fcf3040683a4dfcf0e
[root@node1 ~]# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
fa18c3cc657d        bridge              bridge              local
c1196f6c46ca        host                host                local
c20416a61dd3        none                null                local
1ed592b9d91a        test                bridge              local

测试

# 启动两个容器
docker run -itd --name=c1 busybox
docker run -itd --name=c2 --net=test busybox

# 查看他们ip
docker exec -it c1 ip ad
docker exec -it c2 ip ad

# 因为使用的不同的bridge,他们之间ping不通
docker exec -it c2 ping 172.19.0.2
# 手动将c1加入到test网络
docker network connect test c1
# 查看c1网卡,会增加一个
docker exec -it c1 ip ad

与另一个容器共享一个网络IP

# 先启动一个
docker run -itd --name c1 busybox
# 共享另一个容器网络
docker run -itd --net=container:c1 --name c2 busybox

# 网卡完全一致
docker exec c1 ip ad
docker exec c2 ip ad

文章作者: wuzhiyong
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 wuzhiyong !
评论
 上一篇
loki持久化 loki持久化
查看配置# 查看helm安装Loki默认配置 [root@master ~]# helm inspect values loki/loki > loki.yaml [root@master ~]# cat loki.yaml # 部分配置
2020-08-18
下一篇 
ThreadLocal用法心得 ThreadLocal用法心得
ThreadLocal ThreadLocal类允许我们创建只能被同一个线程读写的变量,本质是一个Hash表,key为Thread自身. 主要方法: set() / get() / remove() 创建// 不带初始值 ThreadL
2020-08-12
  目录