Docker网络管理

1 Docker网络驱动模式

  • bridge network(网桥):默认的网络模式
  • host network(主机):容器与宿主机之间的网络无隔离,即容器直接使用宿主机网络
  • none network:容器禁用所有网络
  • overlay network(覆盖网络):利用VXLAM实现的bridge模式
  • macvlan network:容器具备Mac地址,使其显示为网络上的物理设备

2 Docker网络管理命令

2.1 创建网络 - docker network create

  • 创建新的网络对象
  • docker network create [OPTIONS] NETWORK
  • 示例:
    • 制动网络的驱动:docker network create -d bridge NAME

2.2 删除网络 - docker network rm

  • 删除一个或多个网络
  • docker network rm NETWORK [NETWORK...]

2.3 查看网络详细信息 - docker inspect

  • docker inspect NETWORK

2.4 网络使用

  • 默认使用NAME为bridge的网络:docker run -dti IMAGE COMMAND
  • 指定网络:docker run --network my-bridge IMAGE COMMAND

2.5 网络连接与断开 - docker network connect/disconnect

  • 将指定容器与指定网络进行连接或断开连接
  • docker network connect [OPTIONS] NETWORK CONTAINER
  • docker network disconnect [OPTIONS] NETWORK CONTAINER
  • 示例:
    • 强制断开连接:docker network disconnect -f NETWORK CONTAINER

3 Docker网络模式

3.1 bridge 网络模式

特点

  • 宿主机上需要单独的bridge网卡,如默认docker默认创建的docker0。
  • 容器之间、容器与主机之间的网络通信,是借助为每一个容器生成的一对veth pair虚拟网络设备对,进行通信的。一个在容器上,另一个在宿主机上。
  • 每创建一个基于bridge网络的容器,都会自动在宿主机上创建一个veth**虚拟网络设备。
  • 外部无法直接访问容器。需要建立端口映射才能访问。
  • 容器借由veth虚拟设备通过如docker0这种bridge网络设备进行通信。
  • 每一个容器具有单独的IP。

定制bridge网络

docker network create --subnet 192.168.0.0/16 --ip-range 192.168.10.0/24 --gateway 192.168.10.1 custom-bridge

docker run -dit --network custom-bridge IMAGE

端口映射

  • 将容器内部的所有暴露端口进行随机映射
    • docker run/create -P ...
  • 指定端口映射
    • docker run/create -p 192.168.0.0:8888:3306

3.2 host 网络模式

特点

  • 容器完全共享宿主机网络。网络没有隔离,宿主机的网络就是容器的网络。
  • 容器、主机上应用端口不能重复。
  • 外部可以直接访问容器,不需要端口映射。
  • 容器的IP就是宿主机的IP。

3.3 container网络模式

特点

  • 容器共享其他容器的网络
  • 应用得较多,且host网络性能最优
  • docker run/create --network container:CONTAINER ...

3.4 none网络模式

特点

  • 容器上没有网络,也无任何网络设备。
  • 如果需要使用网络,需要用户自行安装与配置。
  • 适合需要高度定制网络的用户使用。

3.5 overlay网络模式

  • 主要用于实现跨主机容器之间的通信。
  • 适用于需要管理成百上千个跨主机的容器集群的网络场景。

3.6 macvlan网络模式

特点

  • 通信基于mac地址进行转发。这时宿主机充当二层交换机 。Docker会维护一个MAC地址表,当宿主机收到数据包后,直接根据mac地址找到对应的容器,再把数据交给对应的容器。
  • 容器之间可以直接通过IP互通,通过宿主机上内建的虚拟网络设备(创建macvlan网络时自动创建),但无法与主机直接通过IP互通。
  • 适用于需要让容器的网络看起来是一个真实的物理设备的场景。
  • 15
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值