Add explicit flags for volume cp/no-cp

This allows a user to specify explicitly to enable
automatic copying of data from the container path to the volume path.
This does not change the default behavior of automatically copying, but
does allow a user to disable it at runtime.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
This commit is contained in:
Brian Goff 2016-03-14 23:31:42 -04:00 committed by Tibor Vass
parent c0271978f9
commit eba678647b
5 changed files with 24 additions and 11 deletions

View File

@ -90,10 +90,10 @@ Creates a new container.
--uts="" UTS namespace to use --uts="" UTS namespace to use
-v, --volume=[host-src:]container-dest[:<options>] -v, --volume=[host-src:]container-dest[:<options>]
Bind mount a volume. The comma-delimited Bind mount a volume. The comma-delimited
`options` are [rw|ro], [z|Z], or `options` are [rw|ro], [z|Z],
[[r]shared|[r]slave|[r]private]. The [[r]shared|[r]slave|[r]private], and
'host-src' is an absolute path or a name [nocopy]. The 'host-src' is an absolute path
value. or a name value.
--volume-driver="" Container's volume driver --volume-driver="" Container's volume driver
--volumes-from=[] Mount volumes from the specified container(s) --volumes-from=[] Mount volumes from the specified container(s)
-w, --workdir="" Working directory inside the container -w, --workdir="" Working directory inside the container

View File

@ -92,10 +92,10 @@ parent = "smn_cli"
--uts="" UTS namespace to use --uts="" UTS namespace to use
-v, --volume=[host-src:]container-dest[:<options>] -v, --volume=[host-src:]container-dest[:<options>]
Bind mount a volume. The comma-delimited Bind mount a volume. The comma-delimited
`options` are [rw|ro], [z|Z], or `options` are [rw|ro], [z|Z],
[[r]shared|[r]slave|[r]private]. The [[r]shared|[r]slave|[r]private], and
'host-src' is an absolute path or a name [nocopy]. The 'host-src' is an absolute path
value. or a name value.
--volume-driver="" Container's volume driver --volume-driver="" Container's volume driver
--volumes-from=[] Mount volumes from the specified container(s) --volumes-from=[] Mount volumes from the specified container(s)
-w, --workdir="" Working directory inside the container -w, --workdir="" Working directory inside the container

View File

@ -1400,13 +1400,18 @@ The example below mounts an empty tmpfs into the container with the `rw`,
### VOLUME (shared filesystems) ### VOLUME (shared filesystems)
-v, --volume=[host-src:]container-dest[:<options>]: Bind mount a volume. -v, --volume=[host-src:]container-dest[:<options>]: Bind mount a volume.
The comma-delimited `options` are [rw|ro], [z|Z], or The comma-delimited `options` are [rw|ro], [z|Z],
[[r]shared|[r]slave|[r]private]. The 'host-src' is an absolute path or a [[r]shared|[r]slave|[r]private], and [nocopy].
name value. The 'host-src' is an absolute path or a name value.
If neither 'rw' or 'ro' is specified then the volume is mounted in If neither 'rw' or 'ro' is specified then the volume is mounted in
read-write mode. read-write mode.
The `nocopy` modes is used to disable automatic copying requested volume
path in the container to the volume storage location.
For named volumes, `copy` is the default mode. Copy modes are not supported
for bind-mounted volumes.
--volumes-from="": Mount all volumes from the given container(s) --volumes-from="": Mount all volumes from the given container(s)
> **Note**: > **Note**:

View File

@ -434,6 +434,10 @@ change propagation properties of source mount. Say `/` is source mount for
> is `slave`, you may not be able to use the `shared` or `rshared` propagation on > is `slave`, you may not be able to use the `shared` or `rshared` propagation on
> a volume. > a volume.
To disable automatic copying of data from the container path to the volume, use
the `nocopy` flag. The `nocopy` flag can be set on bind mounts and named volumes.
**--volume-driver**="" **--volume-driver**=""
Container's volume driver. This driver creates volumes specified either from Container's volume driver. This driver creates volumes specified either from
a Dockerfile's `VOLUME` instruction or from the `docker run -v` flag. a Dockerfile's `VOLUME` instruction or from the `docker run -v` flag.

View File

@ -531,6 +531,7 @@ any options, the systems uses the following options:
* [rw|ro] * [rw|ro]
* [z|Z] * [z|Z]
* [`[r]shared`|`[r]slave`|`[r]private`] * [`[r]shared`|`[r]slave`|`[r]private`]
* [nocopy]
The `CONTAINER-DIR` must be an absolute path such as `/src/docs`. The `HOST-DIR` The `CONTAINER-DIR` must be an absolute path such as `/src/docs`. The `HOST-DIR`
can be an absolute path or a `name` value. A `name` value must start with an can be an absolute path or a `name` value. A `name` value must start with an
@ -603,6 +604,9 @@ change propagation properties of source mount. Say `/` is source mount for
> is `slave`, you may not be able to use the `shared` or `rshared` propagation on > is `slave`, you may not be able to use the `shared` or `rshared` propagation on
> a volume. > a volume.
To disable automatic copying of data from the container path to the volume, use
the `nocopy` flag. The `nocopy` flag can be set on bind mounts and named volumes.
**--volume-driver**="" **--volume-driver**=""
Container's volume driver. This driver creates volumes specified either from Container's volume driver. This driver creates volumes specified either from
a Dockerfile's `VOLUME` instruction or from the `docker run -v` flag. a Dockerfile's `VOLUME` instruction or from the `docker run -v` flag.