Docker 网络驱动程序插件

本文档一般介绍了 Docker Engine 网络驱动程序插件 在 Docker Engine 中可用。查看有关插件的信息 由 Docker Engine 管理,请参考 Docker Engine 插件系统

Docker Engine 网络插件使 Engine 部署能够扩展到 支持多种网络技术,如 VXLAN、IPVLAN、MACVLAN 或者完全不同的东西。网络驱动程序插件通过 LibNetwork 项目。每个插件都实现为 “远程驱动程序” LibNetwork,它与 Engine 共享插件基础设施。有效地,网络 驱动程序插件的激活方式与其他插件相同,并使用相同的 一种协议。

网络插件和 Swarm 模式

旧版插件在 Swarm 模式下不起作用。然而 使用 v2 插件系统编写的插件可以在 Swarm 模式下工作,因为 只要它们安装在每个 Swarm Worker 节点上即可。

使用网络驱动程序插件

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

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

$ docker network create --driver weave mynet

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

网络现在归 所有,因此后续命令 引用该网络将被发送到插件,mynetweave

$ docker run --network=mynet busybox top

查找网络插件

网络插件由第三方编写,并由第三方发布 Docker Hub 或第三方站点上的第三方。

编写网络插件

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

网络插件协议

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

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