Signed-off-by: Mark Oates <fl0yd@me.com>
1.9 KiB
Experimental: Docker volume plugins
Docker volume plugins enable Docker deployments to be integrated with external storage systems, such as Amazon EBS, and enable data volumes to persist beyond the lifetime of a single Docker host. See the plugin documentation for more information.
This is an experimental feature. For information on installing and using experimental features, see the experimental feature overview.
Command-line changes
This experimental feature introduces two changes to the docker run
command:
- The
--volume-driver
flag is introduced. - The
-v
syntax is changed to accept a volume name a first component.
Example:
$ docker run -ti -v volumename:/data --volume-driver=flocker busybox sh
By specifying a volume name in conjunction with a volume driver, volume plugins such as Flocker, once installed, can be used to manage volumes external to a single host, such as those on EBS. In this example, "volumename" is passed through to the volume plugin as a user-given name for the volume which allows the plugin to associate it with an external volume beyond the lifetime of a single container or container host. This can be used, for example, to move a stateful container from one server to another.
The volumename
must not begin with a /
.
API changes
The container creation endpoint (/containers/create
) accepts a VolumeDriver
field of type string
allowing to specify the name of the driver. It's default
value of "local"
(the default driver for local volumes).
Related GitHub PRs and issues
- #13161 Volume refactor and external volume plugins
Send us feedback and comments on #13420, or on the usual Google Groups (docker-user, docker-dev) and IRC channels.