diff --git a/components/engine/builder/builder-next/executor_unix.go b/components/engine/builder/builder-next/executor_unix.go index 5bfa411324..94d8bb7660 100644 --- a/components/engine/builder/builder-next/executor_unix.go +++ b/components/engine/builder/builder-next/executor_unix.go @@ -21,7 +21,7 @@ const networkName = "bridge" func newExecutor(root, cgroupParent string, net libnetwork.NetworkController) (executor.Executor, error) { networkProviders := map[pb.NetMode]network.Provider{ - pb.NetMode_UNSET: &bridgeProvider{NetworkController: net, netnsRoot: netnsRoot}, + pb.NetMode_UNSET: &bridgeProvider{NetworkController: net}, pb.NetMode_HOST: network.NewHostProvider(), pb.NetMode_NONE: network.NewNoneProvider(), } @@ -34,7 +34,6 @@ func newExecutor(root, cgroupParent string, net libnetwork.NetworkController) (e type bridgeProvider struct { libnetwork.NetworkController - netnsRoot string } func (p *bridgeProvider) New() (network.Namespace, error) { diff --git a/components/engine/cmd/dockerd/daemon.go b/components/engine/cmd/dockerd/daemon.go index 8b27d9be66..416d9df46c 100644 --- a/components/engine/cmd/dockerd/daemon.go +++ b/components/engine/cmd/dockerd/daemon.go @@ -284,17 +284,7 @@ func newRouterOptions(config *config.Config, d *daemon.Daemon) (routerOptions, e if err != nil { return opts, err } - cgroupParent := "docker" - useSystemd := daemon.UsingSystemd(config) - if useSystemd { - cgroupParent = "system.slice" - } - if config.CgroupParent != "" { - cgroupParent = config.CgroupParent - } - if useSystemd { - cgroupParent = cgroupParent + ":" + "docker" + ":" - } + cgroupParent := newCgroupParent(config) bk, err := buildkit.New(buildkit.Opt{ SessionManager: sm, Root: filepath.Join(config.Root, "buildkit"), diff --git a/components/engine/cmd/dockerd/daemon_unix.go b/components/engine/cmd/dockerd/daemon_unix.go index df51c3ef4b..7b03e28594 100644 --- a/components/engine/cmd/dockerd/daemon_unix.go +++ b/components/engine/cmd/dockerd/daemon_unix.go @@ -13,6 +13,7 @@ import ( "github.com/containerd/containerd/runtime/v1/linux" "github.com/docker/docker/cmd/dockerd/hack" "github.com/docker/docker/daemon" + "github.com/docker/docker/daemon/config" "github.com/docker/docker/libcontainerd/supervisor" "github.com/docker/libnetwork/portallocator" "golang.org/x/sys/unix" @@ -107,3 +108,18 @@ func wrapListeners(proto string, ls []net.Listener) []net.Listener { } return ls } + +func newCgroupParent(config *config.Config) string { + cgroupParent := "docker" + useSystemd := daemon.UsingSystemd(config) + if useSystemd { + cgroupParent = "system.slice" + } + if config.CgroupParent != "" { + cgroupParent = config.CgroupParent + } + if useSystemd { + cgroupParent = cgroupParent + ":" + "docker" + ":" + } + return cgroupParent +} diff --git a/components/engine/cmd/dockerd/daemon_windows.go b/components/engine/cmd/dockerd/daemon_windows.go index 11ff7da871..3b9ed9551f 100644 --- a/components/engine/cmd/dockerd/daemon_windows.go +++ b/components/engine/cmd/dockerd/daemon_windows.go @@ -6,6 +6,7 @@ import ( "os" "path/filepath" + "github.com/docker/docker/daemon/config" "github.com/docker/docker/libcontainerd/supervisor" "github.com/sirupsen/logrus" "golang.org/x/sys/windows" @@ -83,3 +84,7 @@ func allocateDaemonPort(addr string) error { func wrapListeners(proto string, ls []net.Listener) []net.Listener { return ls } + +func newCgroupParent(config *config.Config) string { + return "" +}