934328d8 |
// +build !windows
|
7b2e5216 |
package daemon
import (
"fmt"
"github.com/docker/docker/container"
"github.com/docker/docker/libcontainerd"
)
|
606a245d |
func (daemon *Daemon) getLibcontainerdCreateOptions(container *container.Container) ([]libcontainerd.CreateOption, error) { |
7b2e5216 |
createOptions := []libcontainerd.CreateOption{}
|
d7ceda4e |
// Ensure a runtime has been assigned to this container
if container.HostConfig.Runtime == "" { |
9391a822 |
container.HostConfig.Runtime = daemon.configStore.GetDefaultRuntimeName() |
d7ceda4e |
container.ToDisk()
}
|
7b2e5216 |
rt := daemon.configStore.GetRuntime(container.HostConfig.Runtime)
if rt == nil { |
d7ceda4e |
return nil, fmt.Errorf("no such runtime '%s'", container.HostConfig.Runtime) |
7b2e5216 |
} |
7f88fca4 |
if UsingSystemd(daemon.configStore) {
rt.Args = append(rt.Args, "--systemd-cgroup=true")
} |
7b2e5216 |
createOptions = append(createOptions, libcontainerd.WithRuntime(rt.Path, rt.Args))
|
606a245d |
return createOptions, nil |
7b2e5216 |
} |