使用 Docker 引擎插件

本文档介绍了 Docker 引擎中普遍可用的 Docker 引擎插件。要查看有关 Docker 管理的插件的信息,请参阅 Docker 引擎插件系统

您可以通过加载第三方插件来扩展 Docker 引擎的功能。本页介绍了插件类型,并提供了指向 Docker 的几个卷和网络插件的链接。

插件类型

插件扩展了 Docker 的功能。它们有特定的类型。例如,卷插件 可使 Docker 卷跨多个 Docker 主机持久化,而 网络插件 可提供网络布线。

目前,Docker 支持授权、卷和网络驱动程序插件。将来它将支持其他插件类型。

安装插件

请按照插件文档中的说明进行操作。

查找插件

以下部分概述了可用的第三方插件。

网络插件

插件描述
Contiv 网络一个开源网络插件,为多租户微服务部署提供基础设施和安全策略,同时提供与物理网络的集成,用于非容器工作负载。Contiv 网络实施了 Docker 1.9 及更高版本中提供的远程驱动程序和 IPAM API。
Kuryr 网络插件网络插件是作为 OpenStack Kuryr 项目的一部分开发的,通过利用 OpenStack 网络服务 Neutron 来实施 Docker 网络(libnetwork)远程驱动程序 API。它还包含一个 IPAM 驱动程序。
Kathará 网络插件Kathará 使用的 Docker 网络插件,Kathará 是一个开源的基于容器的网络仿真系统,用于展示交互式演示/课程、在沙箱环境中测试生产网络或开发新的网络协议。

卷插件

插件描述
Azure 文件存储插件使您可以使用 SMB 3.0 协议将 Microsoft Azure 文件存储 共享到 Docker 容器中作为卷,使用 SMB 3.0 协议。 了解更多.
BeeGFS 卷插件一个开源卷插件,用于在 BeeGFS 并行文件系统中创建持久卷。
Blockbridge 插件一个卷插件,它提供对可扩展的基于容器的持久存储选项集的访问。它支持单主机和多主机 Docker 环境,并提供包括租户隔离、自动预置、加密、安全删除、快照和 QoS 等功能。
Contiv 卷插件一个开源卷插件,提供基于意图的消费的多租户、持久、分布式存储。它支持 Ceph 和 NFS。
Convoy 插件一个适用于各种存储后端的卷插件,包括设备映射器和 NFS。它是一个用 Go 编写的简单独立可执行文件,并提供框架以支持供应商特定的扩展,例如快照、备份和还原。
DigitalOcean 块存储插件通过将给定的块存储卷自动附加到 DigitalOcean Droplet 并使该卷的内容可用于在该 Droplet 上运行的 Docker 容器,将 DigitalOcean 的 块存储解决方案 集成到 Docker 生态系统中。
DRBD 插件一个卷插件,它提供由 DRBD 复制的高可用存储。写入 Docker 卷的数据在 DRBD 节点集群中复制。
Flocker 插件一个卷插件,为 Docker 提供多主机可移植卷,使您能够运行数据库和其他有状态容器,并在机器集群之间移动它们。
Fuxi 卷插件一个卷插件,它作为 OpenStack Kuryr 项目的一部分开发,通过利用 OpenStack 块存储服务 Cinder 来实施 Docker 卷插件 API。
gce-docker 插件一个卷插件,能够附加、格式化和挂载 Google Compute 持久磁盘.
GlusterFS 插件一个卷插件,使用 GlusterFS 为 Docker 提供多主机卷管理。
Horcrux 卷插件一个卷插件,允许按需、版本控制的方式访问您的数据。Horcrux 是一个用 Go 编写的开源插件,支持 SCP、Minio 和 Amazon S3。
HPE 3Par 卷插件一个卷插件,支持 HPE 3Par 和 StoreVirtual iSCSI 存储阵列。
Infinit 卷插件一个卷插件,使您可以轻松使用 Docker 挂载和管理 Infinit 卷。
IPFS 卷插件一个开源卷插件,允许使用 ipfs 文件系统作为卷。
Keywhiz 插件一个插件,使用 Keywhiz 作为中央存储库来提供凭据和密钥管理。
Linode 卷插件一个插件,增加了在 Linode 内从 Docker 卷中管理 Linode 块存储的功能。
本地持久化插件一个卷插件,通过允许您在主机的任何位置指定挂载点来扩展默认的 local 驱动程序的功能,这使得文件能够始终持久化,即使卷通过 docker volume rm 删除也是如此。
NetApp 插件 (nDVP)一个卷插件,为 NetApp 存储产品组合提供与 Docker 生态系统的直接集成。nDVP 软件包支持从存储平台到 Docker 主机配置和管理存储资源,并提供了一个强大的框架,用于在将来添加其他平台。
Netshare 插件一个卷插件,为 NFS 3/4、AWS EFS 和 CIFS 文件系统提供卷管理。
Nimble 存储卷插件一个卷插件,与 Nimble Storage 统一闪存结构阵列集成。该插件将阵列卷功能抽象到 Docker 管理员,允许自我配置安全的多租户卷和克隆。
OpenStorage 插件一个集群感知卷插件,为文件和块存储解决方案提供卷管理。它实现了用于实现 CoS、加密和快照等扩展的供应商中立规范。它基于 FUSE、NFS、NBD 和 EBS 的示例驱动程序等等。
Portworx 卷插件一个卷插件,将任何服务器变成一个扩展的融合计算/存储节点,使用一个与任何 Docker 调度程序一起使用的无共享存储后端,跨任何节点提供容器粒度存储和高可用卷。
Quobyte 卷插件一个卷插件,将 Docker 连接到 Quobyte 的数据中心文件系统,一个通用的可扩展且容错的存储平台。
REX-Ray 插件一个用 Go 编写的卷插件,为许多平台提供高级存储功能,包括 VirtualBox、EC2、Google Compute Engine、OpenStack 和 EMC。
Virtuozzo 存储和 Ploop 插件一个支持 Virtuozzo 存储分布式云文件系统和 ploop 设备的卷插件。
VMware vSphere 存储插件vSphere 的 Docker 卷驱动程序使客户能够满足 vSphere 环境中 Docker 容器的持久存储需求。

授权插件

插件描述
Casbin AuthZ 插件一个基于 Casbin 的授权插件,支持 ACL、RBAC、ABAC 等访问控制模型。访问控制模型可以自定义。策略可以持久化到文件或数据库中。
HBM 插件一个授权插件,阻止执行带有某些参数的命令。
Twistlock AuthZ 代理一个基本的可扩展授权插件,直接在主机上或容器内运行。此插件允许您定义它在授权期间评估的用户策略。如果 Docker 守护程序以 --tlsverify 标志启动(用户名从证书公用名中提取),则提供基本授权。

排查插件问题

如果您在加载插件后遇到 Docker 问题,请向插件作者寻求帮助。Docker 团队可能无法帮助您。

编写插件

如果您有兴趣为 Docker 编写插件,或查看它们在幕后的工作原理,请参阅 Docker 插件参考