2015-05-22 12:18:19 -04:00
|
|
|
# Experimental: Extend Docker with a plugin
|
2015-05-22 19:47:28 -04:00
|
|
|
|
|
|
|
You can extend the capabilities of the Docker Engine by loading third-party
|
2015-05-22 12:18:19 -04:00
|
|
|
plugins.
|
|
|
|
|
2015-06-10 01:20:48 -04:00
|
|
|
This is an experimental feature. For information on installing and using experimental features, see [the experimental feature overview](README.md).
|
2015-05-22 19:47:28 -04:00
|
|
|
|
|
|
|
## Types of plugins
|
|
|
|
|
|
|
|
Plugins extend Docker's functionality. They come in specific types. For
|
2015-06-10 01:20:48 -04:00
|
|
|
example, a [volume plugin](/experimental/plugins_volume.md) might enable Docker
|
2015-05-22 19:47:28 -04:00
|
|
|
volumes to persist across multiple Docker hosts.
|
|
|
|
|
2015-06-17 11:06:39 -04:00
|
|
|
Currently Docker supports volume and network driver plugins. In the future it
|
|
|
|
will support additional plugin types.
|
2015-05-22 19:47:28 -04:00
|
|
|
|
|
|
|
## Installing a plugin
|
|
|
|
|
|
|
|
Follow the instructions in the plugin's documentation.
|
|
|
|
|
|
|
|
## Finding a plugin
|
|
|
|
|
|
|
|
The following plugins exist:
|
|
|
|
|
|
|
|
* The [Flocker plugin](https://clusterhq.com/docker-plugin/) is a volume plugin
|
2015-06-17 11:06:39 -04:00
|
|
|
which provides multi-host portable volumes for Docker, enabling you to run
|
2015-05-22 19:47:28 -04:00
|
|
|
databases and other stateful containers and move them around across a cluster
|
|
|
|
of machines.
|
|
|
|
|
2015-06-17 11:06:39 -04:00
|
|
|
* The [Weave plugin](https://github.com/weaveworks/docker-plugin) is a network
|
|
|
|
driver plugin which provides a virtual, multi-host network for containers.
|
|
|
|
|
|
|
|
* The [Calico plugin](https://github.com/metaswitch/calico-docker) is a network
|
|
|
|
driver plugin which provides a multi-host network for containers with routes
|
|
|
|
distributed by BGP.
|
|
|
|
|
2015-05-22 19:47:28 -04:00
|
|
|
## 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
|
2015-06-10 01:20:48 -04:00
|
|
|
under the hood, see the [docker plugins reference](/experimental/plugin_api.md).
|
2015-05-22 19:47:28 -04:00
|
|
|
|
|
|
|
# Related GitHub PRs and issues
|
|
|
|
|
|
|
|
- [#13222](https://github.com/docker/docker/pull/13222) Plugins plumbing
|
|
|
|
|
|
|
|
Send us feedback and comments on [#13419](https://github.com/docker/docker/issues/13419),
|
|
|
|
or on the usual Google Groups (docker-user, docker-dev) and IRC channels.
|