mirror of
https://github.com/containers/podman.git
synced 2025-08-06 19:44:14 +08:00
Describe copy volume options
Fixes: https://github.com/containers/podman/issues/16961 Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
This commit is contained in:
@ -156,6 +156,12 @@ To recursively mount a volume and all of its submounts into a
|
|||||||
used, and submounts of the source directory will not be mounted into the
|
used, and submounts of the source directory will not be mounted into the
|
||||||
<<container|pod>>.
|
<<container|pod>>.
|
||||||
|
|
||||||
|
Mounting the volume with a **copy** option tells podman to copy content from
|
||||||
|
the underlying destination directory onto newly created internal volumes. The
|
||||||
|
**copy** only happens on the initial creation of the volume. Content is not
|
||||||
|
copied up when the volume is subsequently used on different containers. The
|
||||||
|
**copy** option is ignored on bind mounts and has no effect.
|
||||||
|
|
||||||
Mounting the volume with the **nosuid** options means that SUID applications on
|
Mounting the volume with the **nosuid** options means that SUID applications on
|
||||||
the volume will not be able to change their privilege. By default volumes
|
the volume will not be able to change their privilege. By default volumes
|
||||||
are mounted with **nosuid**.
|
are mounted with **nosuid**.
|
||||||
|
@ -424,7 +424,7 @@ func (ic *ContainerEngine) ContainerRm(ctx context.Context, namesOrIds []string,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// First, remove dependend containers.
|
// First, remove dependent containers.
|
||||||
if options.All || options.Depend {
|
if options.All || options.Depend {
|
||||||
for _, ctr := range libpodContainers {
|
for _, ctr := range libpodContainers {
|
||||||
// When `All` is set, remove the infra containers and
|
// When `All` is set, remove the infra containers and
|
||||||
|
@ -49,7 +49,7 @@ var _ = Describe("Podman run with volumes", func() {
|
|||||||
|
|
||||||
_ = SystemExec("ls", []string{"-l", containerStorageDir})
|
_ = SystemExec("ls", []string{"-l", containerStorageDir})
|
||||||
|
|
||||||
// All files should be in permament store, not volatile
|
// All files should be in permanent store, not volatile
|
||||||
Expect(filepath.Join(containerStorageDir, "containers.json")).Should(BeARegularFile())
|
Expect(filepath.Join(containerStorageDir, "containers.json")).Should(BeARegularFile())
|
||||||
Expect(filepath.Join(containerStorageDir, "volatile-containers.json")).Should(Not(BeAnExistingFile()))
|
Expect(filepath.Join(containerStorageDir, "volatile-containers.json")).Should(Not(BeAnExistingFile()))
|
||||||
Expect(filepath.Join(runContainerStorageDir, "containers.json")).Should(Not(BeAnExistingFile()))
|
Expect(filepath.Join(runContainerStorageDir, "containers.json")).Should(Not(BeAnExistingFile()))
|
||||||
@ -63,7 +63,7 @@ var _ = Describe("Podman run with volumes", func() {
|
|||||||
session.WaitWithDefaultTimeout()
|
session.WaitWithDefaultTimeout()
|
||||||
Expect(session).Should(Exit(0))
|
Expect(session).Should(Exit(0))
|
||||||
|
|
||||||
// All files should be in permament store, volatile
|
// All files should not be in permanent store, not volatile
|
||||||
Expect(filepath.Join(containerStorageDir, "containers.json")).Should(Not(BeAnExistingFile()))
|
Expect(filepath.Join(containerStorageDir, "containers.json")).Should(Not(BeAnExistingFile()))
|
||||||
Expect(filepath.Join(containerStorageDir, "volatile-containers.json")).Should(BeARegularFile())
|
Expect(filepath.Join(containerStorageDir, "volatile-containers.json")).Should(BeARegularFile())
|
||||||
Expect(filepath.Join(runContainerStorageDir, "containers.json")).Should(Not(BeAnExistingFile()))
|
Expect(filepath.Join(runContainerStorageDir, "containers.json")).Should(Not(BeAnExistingFile()))
|
||||||
|
Reference in New Issue
Block a user