1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/docs/extend/plugins.md
Gou Rao 0385b9b65d Update plugins.md
Add OpenStorage to Docker plugin list.

Signed-off-by: Gou Rao <gou@portworx.com>
2015-11-02 22:23:13 -08:00

3.6 KiB

Understand Docker plugins

You can extend the capabilities of the Docker Engine by loading third-party plugins.

Types of plugins

Plugins extend Docker's functionality. They come in specific types. For example, a volume plugin might enable Docker volumes to persist across multiple Docker hosts and a network plugin might provide network plumbing using a favorite networking technology, such as vxlan overlay, ipvlan, EVPN, etc.

Currently Docker supports volume and network driver plugins. In the future it will support additional plugin types.

Installing a plugin

Follow the instructions in the plugin's documentation.

Finding a plugin

The following plugins exist:

  • The Blockbridge plugin is 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.

  • The Convoy plugin is 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.

  • The Flocker plugin is a volume plugin which 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.

  • The GlusterFS plugin is another volume plugin that provides multi-host volumes management for Docker using GlusterFS.

  • The Keywhiz plugin is a plugin that provides credentials and secret management using Keywhiz as a central repository.

  • The Netshare plugin is a volume plugin that provides volume management for NFS 3/4, AWS EFS and CIFS file systems.

  • The [OpenStorage Plugin] (https://github.com/libopenstorage/openstorage) is 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.

  • The Pachyderm PFS plugin is a volume plugin written in Go that provides functionality to mount Pachyderm File System (PFS) repositories at specific commits as volumes within Docker containers.

  • The REX-Ray plugin is a volume plugin which is written in Go and provides advanced storage functionality for many platforms including EC2, OpenStack, XtremIO, and ScaleIO.

Troubleshooting a plugin

If you are having problems with Docker after loading a plugin, ask the authors of the plugin for help. The Docker team may not be able to assist you.

Writing a plugin

If you are interested in writing a plugin for Docker, or seeing how they work under the hood, see the docker plugins reference.