From 45cca57887b8f338d41829d6f6211a889140b5a0 Mon Sep 17 00:00:00 2001 From: Daniel J Walsh Date: Thu, 3 Sep 2020 08:13:50 -0400 Subject: [PATCH] We need to use global GraphDriverOptions for rootless environments Signed-off-by: Daniel J Walsh --- utils.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/utils.go b/utils.go index d65d527180..dd8d17c26f 100644 --- a/utils.go +++ b/utils.go @@ -198,7 +198,7 @@ func getRootlessDirInfo(rootlessUID int) (string, string, error) { } // getRootlessStorageOpts returns the storage opts for containers running as non root -func getRootlessStorageOpts(rootlessUID int) (StoreOptions, error) { +func getRootlessStorageOpts(rootlessUID int, systemOpts StoreOptions) (StoreOptions, error) { var opts StoreOptions dataDir, rootlessRuntime, err := getRootlessDirInfo(rootlessUID) @@ -211,6 +211,9 @@ func getRootlessStorageOpts(rootlessUID int) (StoreOptions, error) { if path, err := exec.LookPath("fuse-overlayfs"); err == nil { opts.GraphDriverName = "overlay" opts.GraphDriverOptions = []string{fmt.Sprintf("overlay.mount_program=%s", path)} + if systemOpts.GraphDriverName == "overlay" { + opts.GraphDriverOptions = append(systemOpts.GraphDriverOptions, opts.GraphDriverOptions...) + } } else { opts.GraphDriverName = "vfs" } @@ -242,7 +245,7 @@ func defaultStoreOptionsIsolated(rootless bool, rootlessUID int, storageConf str ) storageOpts := defaultStoreOptions if rootless && rootlessUID != 0 { - storageOpts, err = getRootlessStorageOpts(rootlessUID) + storageOpts, err = getRootlessStorageOpts(rootlessUID, storageOpts) if err != nil { return storageOpts, err }