使用 Docker 引擎插件

本文档描述了Docker Engine中普遍可用的Docker Engine插件。要查看由Docker管理的插件信息,请参考 Docker Engine插件系统

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

插件类型

插件扩展了Docker的功能。它们有特定的类型。例如,一个卷插件可能使Docker卷能够在多个Docker主机之间持久化,而一个网络插件可能提供网络基础设施。

目前Docker支持授权、卷和网络驱动插件。未来它将支持更多的插件类型。

安装插件

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

寻找插件

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

网络插件

PluginDescription
Contiv 网络An open source network plugin to provide infrastructure and security policies for a multi-tenant micro services deployment, while providing an integration to physical network for non-container workload. Contiv Networking implements the remote driver and IPAM APIs available in Docker 1.9 onwards.
Kuryr 网络插件A network plugin is developed as part of the OpenStack Kuryr project and implements the Docker networking (libnetwork) remote driver API by utilizing Neutron, the OpenStack networking service. It includes an IPAM driver as well.
Kathará 网络插件Docker Network Plugin used by Kathará, an open source container-based network emulation system for showing interactive demos/lessons, testing production networks in a sandbox environment, or developing new network protocols.

卷插件

PluginDescription
Azure 文件存储插件Lets you mount Microsoft Azure 文件存储 shares to Docker containers as volumes using the SMB 3.0 protocol. 了解更多.
BeeGFS 卷插件An open source volume plugin to create persistent volumes in a BeeGFS parallel file system.
Blockbridge 插件A volume plugin that provides access to an extensible set of container-based persistent storage options. It supports single and multi-host Docker environments with features that include tenant isolation, automated provisioning, encryption, secure deletion, snapshots and QoS.
Contiv Volume PluginAn open source volume plugin that provides multi-tenant, persistent, distributed storage with intent based consumption. It has support for Ceph and NFS.
Convoy 插件A volume plugin for a variety of storage back-ends including device mapper and NFS. It's a simple standalone executable written in Go and provides the framework to support vendor-specific extensions such as snapshots, backups and restore.
DigitalOcean 块存储插件Integrates DigitalOcean's 块存储解决方案 into the Docker ecosystem by automatically attaching a given block storage volume to a DigitalOcean droplet and making the contents of the volume available to Docker containers running on that droplet.
DRBD 插件A volume plugin that provides highly available storage replicated by DRBD. Data written to the docker volume is replicated in a cluster of DRBD nodes.
Flocker 插件A volume plugin that provides multi-host portable volumes for Docker, enabling you to run databases and other stateful containers and move them around across a cluster of machines.
Fuxi Volume PluginA volume plugin that is developed as part of the OpenStack Kuryr project and implements the Docker volume plugin API by utilizing Cinder, the OpenStack block storage service.
gce-docker 插件A volume plugin able to attach, format and mount Google Compute persistent-disks.
GlusterFS插件A volume plugin that provides multi-host volumes management for Docker using GlusterFS.
Horcrux 卷插件A volume plugin that allows on-demand, version controlled access to your data. Horcrux is an open-source plugin, written in Go, and supports SCP, Minio and Amazon S3.
HPE 3Par 卷插件A volume plugin that supports HPE 3Par and StoreVirtual iSCSI storage arrays.
Infinit 卷插件A volume plugin that makes it easy to mount and manage Infinit volumes using Docker.
IPFS 卷插件An open source volume plugin that allows using an ipfs filesystem as a volume.
Keywhiz 插件A plugin that provides credentials and secret management using Keywhiz as a central repository.
Linode 卷插件A plugin that adds the ability to manage Linode Block Storage as Docker Volumes from within a Linode.
本地持久化插件A volume plugin that extends the default local driver's functionality by allowing you specify a mountpoint anywhere on the host, which enables the files to always persist, even if the volume is removed via docker volume rm.
NetApp 插件 (nDVP)A volume plugin that provides direct integration with the Docker ecosystem for the NetApp storage portfolio. The nDVP package supports the provisioning and management of storage resources from the storage platform to Docker hosts, with a robust framework for adding additional platforms in the future.
Netshare 插件A volume plugin that provides volume management for NFS 3/4, AWS EFS and CIFS file systems.
Nimble Storage Volume PluginA volume plug-in that integrates with Nimble Storage Unified Flash Fabric arrays. The plug-in abstracts array volume capabilities to the Docker administrator to allow self-provisioning of secure multi-tenant volumes and clones.
OpenStorage 插件A cluster-aware volume plugin that provides volume management for file and block storage solutions. It implements a vendor neutral specification for implementing extensions such as CoS, encryption, and snapshots. It has example drivers based on FUSE, NFS, NBD and EBS to name a few.
Portworx Volume PluginA volume plugin that turns any server into a scale-out converged compute/storage node, providing container granular storage and highly available volumes across any node, using a shared-nothing storage backend that works with any docker scheduler.
Quobyte 卷插件A volume plugin that connects Docker to Quobyte's data center file system, a general-purpose scalable and fault-tolerant storage platform.
REX-Ray 插件A volume plugin which is written in Go and provides advanced storage functionality for many platforms including VirtualBox, EC2, Google Compute Engine, OpenStack, and EMC.
Virtuozzo 存储和 Ploop 插件A volume plugin with support for Virtuozzo Storage distributed cloud file system as well as ploop devices.
VMware vSphere 存储插件Docker Volume Driver for vSphere enables customers to address persistent storage requirements for Docker containers in vSphere environments.

授权插件

PluginDescription
Casbin AuthZ 插件An authorization plugin based on Casbin, which supports access control models like ACL, RBAC, ABAC. The access control model can be customized. The policy can be persisted into file or DB.
HBM插件An authorization plugin that prevents from executing commands with certains parameters.
Twistlock AuthZ BrokerA basic extendable authorization plugin that runs directly on the host or inside a container. This plugin allows you to define user policies that it evaluates during authorization. Basic authorization is provided if Docker daemon is started with the --tlsverify flag (username is extracted from the certificate common name).

插件故障排除

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

编写插件

如果您对为Docker编写插件感兴趣,或者想了解它们的工作原理,请参阅 Docker插件参考