使用 Docker Engine 插件

本文档介绍了 Docker 中通常可用的 Docker 引擎插件 发动机。要查看 Docker 管理的插件的信息, 请参阅 Docker Engine 插件系统

您可以通过加载第三方 插件。本页介绍了插件的类型,并提供了几个插件的链接 Docker 的卷和网络插件。

插件类型

插件扩展了 Docker 的功能。它们有特定的类型。为 例如,卷插件可能会启用 Docker 卷在多个 Docker 主机之间持久存在,网络插件可能会提供网络管道。

目前 Docker 支持 authorization、volume 和 network 驱动程序插件。在未来 将支持其他插件类型。

安装插件

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

查找插件

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

网络插件

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

卷插件

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

授权插件

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

对插件进行故障排除

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

编写插件

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