df987c84de
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
(cherry picked from commit d7ceda4e37
)
27 lines
790 B
Go
27 lines
790 B
Go
package daemon
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/docker/docker/container"
|
|
"github.com/docker/docker/libcontainerd"
|
|
"github.com/docker/engine-api/types"
|
|
)
|
|
|
|
func (daemon *Daemon) getLibcontainerdCreateOptions(container *container.Container) (*[]libcontainerd.CreateOption, error) {
|
|
createOptions := []libcontainerd.CreateOption{}
|
|
|
|
// Ensure a runtime has been assigned to this container
|
|
if container.HostConfig.Runtime == "" {
|
|
container.HostConfig.Runtime = types.DefaultRuntimeName
|
|
container.ToDisk()
|
|
}
|
|
|
|
rt := daemon.configStore.GetRuntime(container.HostConfig.Runtime)
|
|
if rt == nil {
|
|
return nil, fmt.Errorf("no such runtime '%s'", container.HostConfig.Runtime)
|
|
}
|
|
createOptions = append(createOptions, libcontainerd.WithRuntime(rt.Path, rt.Args))
|
|
|
|
return &createOptions, nil
|
|
}
|