From 23c763ef1cb9fbe7a5b419cd6f6ab83eb5a69438 Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Mon, 11 Feb 2019 14:28:03 +0100 Subject: [PATCH] systemd: set --containerd socket patch to prevent race-condition containerd is now running as a separate service, and should no longer be started as a managed child-process of dockerd. The dockerd service already specifies that it should be started `After` the containerd.service, but there is still a race condition, where containerd is started, but its socket is not yet created. In that situation, `dockerd` detects that the containerd socket is missing, and will start a new instance of containerd (as a managed child-process), which causes live-restore to fail. This patch explicitly sets the `--containerd` daemon option. If this option is set, `dockerd` will not start a new instance of containerd. Signed-off-by: Sebastiaan van Stijn --- contrib/init/systemd/docker.service | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/init/systemd/docker.service b/contrib/init/systemd/docker.service index 1605e2896d..3b658fd962 100644 --- a/contrib/init/systemd/docker.service +++ b/contrib/init/systemd/docker.service @@ -11,7 +11,7 @@ Type=notify # the default is not to use systemd for cgroups because the delegate issues still # exists and systemd currently does not support the cgroup feature set required # for containers run by docker -ExecStart=/usr/bin/dockerd -H fd:// +ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock ExecReload=/bin/kill -s HUP $MAINPID TimeoutSec=0 RestartSec=2