网络驱动程序

Docker 的网络子系统使用驱动程序是可插拔的。多个驱动程序 默认存在,并提供核心网络功能:

  • bridge:默认网络驱动程序。如果您未指定驱动程序,则为 您正在创建的网络类型。桥接网络通常用于 您的应用程序在需要与其他 容器。 请参阅 Bridge 网络驱动程序

  • host:消除容器和 Docker 主机之间的网络隔离, 并直接使用主机的网络。 请参阅主机网络驱动程序

  • overlay:覆盖网络将多个 Docker 守护进程连接在一起,并且 使 Swarm 服务和容器能够跨节点通信。这 策略消除了执行 OS 级路由的需要。 请参阅 覆盖网络驱动程序

  • ipvlan:IPvlan 网络让用户可以完全控制 IPv4 和 IPv6 寻址。VLAN 驱动程序建立在此基础上,为操作员提供完整的 控制第 2 层 VLAN 标记,甚至用户的 IPvlan L3 路由 对 Underlay Network 集成感兴趣。 请参阅 IPvlan 网络驱动程序

  • macvlan:Macvlan 网络允许您为容器分配 MAC 地址, 使其在您的网络上显示为物理设备。Docker 守护程序 通过容器的 MAC 地址将流量路由到容器。在处理遗留应用程序时,使用驱动程序有时是最佳选择 期望直接连接到物理网络,而不是路由 通过 Docker 主机的网络堆栈。 请参阅 Macvlan 网络驱动程序macvlan

  • none:将容器与主机和其他容器完全隔离。 不适用于 Swarm 服务。 请参见无网络驱动程序none

  • 网络插件:您可以安装和使用 使用 Docker 的第三方网络插件。

网络驱动程序摘要

  • 默认桥接网络适用于运行不需要的容器 特殊的联网功能。
  • 用户定义的桥接网络使同一 Docker 主机上的容器能够 相互通信。用户定义的网络通常定义 属于一个公共项目的多个容器的隔离网络,或者 元件。
  • 主机网络与容器共享主机网络。当您使用此 驱动程序中,容器的网络不会与主机隔离。
  • 当您需要在不同 Docker 主机进行通信,或者当多个应用程序协同工作时 使用 Swarm 服务。
  • 当您从 VM 设置迁移或需要 容器看起来像网络上的物理主机,每个容器都有一个唯一的 MAC地址。
  • IPvlan 类似于 Macvlan,但不为 器皿。当 IPvlan 的数量有限制时,请考虑使用 IPvlan 可分配给网络接口或端口的 MAC 地址。
  • 第三方网络插件允许您将 Docker 与专门的 network 堆栈。

网络教程

现在,您已经了解了 Docker 网络的基础知识,请深化您的 使用以下教程进行理解: