Parcourir la source

daemon: ensure systemd cgroup is passed down to runtimes

Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Antonio Murdaca il y a 8 ans
Parent
commit
7f88fca48e
2 fichiers modifiés avec 4 ajouts et 5 suppressions
  1. 1 5
      daemon/daemon_unix.go
  2. 3 0
      daemon/start_linux.go

+ 1 - 5
daemon/daemon_unix.go

@@ -566,11 +566,7 @@ func verifyDaemonSettings(config *Config) error {
 	if config.Runtimes == nil {
 		config.Runtimes = make(map[string]types.Runtime)
 	}
-	stockRuntimeOpts := []string{}
-	if UsingSystemd(config) {
-		stockRuntimeOpts = append(stockRuntimeOpts, "--systemd-cgroup=true")
-	}
-	config.Runtimes[stockRuntimeName] = types.Runtime{Path: DefaultRuntimeBinary, Args: stockRuntimeOpts}
+	config.Runtimes[stockRuntimeName] = types.Runtime{Path: DefaultRuntimeBinary}
 
 	return nil
 }

+ 3 - 0
daemon/start_linux.go

@@ -20,6 +20,9 @@ func (daemon *Daemon) getLibcontainerdCreateOptions(container *container.Contain
 	if rt == nil {
 		return nil, fmt.Errorf("no such runtime '%s'", container.HostConfig.Runtime)
 	}
+	if UsingSystemd(daemon.configStore) {
+		rt.Args = append(rt.Args, "--systemd-cgroup=true")
+	}
 	createOptions = append(createOptions, libcontainerd.WithRuntime(rt.Path, rt.Args))
 
 	return &createOptions, nil