From d7ceda4e375250e6868854cca96c49a369503745 Mon Sep 17 00:00:00 2001 From: Kenfe-Mickael Laventure Date: Mon, 20 Jun 2016 11:21:01 -0700 Subject: [PATCH] Fix missing container runtime on upgrade Signed-off-by: Kenfe-Mickael Laventure --- daemon/start_linux.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/daemon/start_linux.go b/daemon/start_linux.go index 50a9148a9f..6a96b699d6 100644 --- a/daemon/start_linux.go +++ b/daemon/start_linux.go @@ -5,14 +5,21 @@ import ( "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) + return nil, fmt.Errorf("no such runtime '%s'", container.HostConfig.Runtime) } createOptions = append(createOptions, libcontainerd.WithRuntime(rt.Path, rt.Args))