Docker 网络驱动程序插件

本文档介绍了 Docker Engine 中普遍可用的 Docker Engine 网络驱动程序插件。要查看 Docker Engine 管理的插件信息,请参阅Docker Engine 插件系统

Docker Engine 网络插件使 Engine 部署能够扩展以支持各种网络技术,例如 VXLAN、IPVLAN、MACVLAN 或完全不同的技术。网络驱动程序插件通过 LibNetwork 项目提供支持。每个插件都作为 LibNetwork 的“远程驱动程序”实现,它与 Engine 共享插件基础设施。实际上,网络驱动程序插件的激活方式与其他插件相同,并使用相同类型的协议。

网络插件和 Swarm 模式

旧版插件在 Swarm 模式下无法工作。但是,使用 v2 插件系统编写的插件在 Swarm 模式下可以工作,只要它们安装在每个 Swarm 工作节点上。

使用网络驱动程序插件

安装和运行网络驱动程序插件的方式取决于特定的插件。因此,请务必根据插件开发人员提供的说明安装插件。

但是,一旦运行,网络驱动程序插件就像内置网络驱动程序一样使用:通过在面向网络的 Docker 命令中提及驱动程序。例如,

$ docker network create --driver weave mynet

一些网络驱动程序插件列在插件中。

mynet 网络现在由 weave 拥有,因此后续引用该网络的命令将发送到插件,

$ docker run --network=mynet busybox top

查找网络插件

网络插件由第三方编写,并由这些第三方发布,无论是在Docker Hub上还是在第三方网站上。

编写网络插件

网络插件实现了Docker 插件 API 和网络插件协议。

网络插件协议

除了插件激活调用之外,网络驱动程序协议作为 libnetwork 的一部分进行了文档化:https://github.com/moby/moby/blob/master/libnetwork/docs/remote.md

要与 Docker 维护者和其他感兴趣的用户互动,请参阅 IRC 频道 #docker-network

© . This site is unofficial and not affiliated with Kubernetes or Docker Inc.