Browse Source

Merge pull request #42233 from AkihiroSuda/fix-rootless-bind-EPERM-20.10

[20.10 backport] rootless: bind mount: fix "operation not permitted"
Tibor Vass 4 years ago
parent
commit
88bd96d6e5
1 changed files with 1 additions and 1 deletions
  1. 1 1
      daemon/oci_linux.go

+ 1 - 1
daemon/oci_linux.go

@@ -648,7 +648,7 @@ func WithMounts(daemon *Daemon, c *container.Container) coci.SpecOpts {
 			// "mount" when we bind-mount. The reason for this is that at the point
 			// "mount" when we bind-mount. The reason for this is that at the point
 			// when runc sets up the root filesystem, it is already inside a user
 			// when runc sets up the root filesystem, it is already inside a user
 			// namespace, and thus cannot change any flags that are locked.
 			// namespace, and thus cannot change any flags that are locked.
-			if daemon.configStore.RemappedRoot != "" {
+			if daemon.configStore.RemappedRoot != "" || sys.RunningInUserNS() {
 				unprivOpts, err := getUnprivilegedMountFlags(m.Source)
 				unprivOpts, err := getUnprivilegedMountFlags(m.Source)
 				if err != nil {
 				if err != nil {
 					return err
 					return err