From a54bc9b671b0ff938075c026180b2ec04b53c8b2 Mon Sep 17 00:00:00 2001 From: gfrascadorio Date: Sun, 25 Apr 2021 20:43:09 -0400 Subject: [PATCH] docker: fix systemd unit files (#120019) * docker: fix systemd unit files Add missing docker.socket file and patch ExecStart in docker.service so these units are useful on non-nixos systems using systemd. (issue #70407) * moved systemd units under: optionalString (stdenv.isLinux) --- pkgs/applications/virtualization/docker/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix index f3d5572750f..954404e5268 100644 --- a/pkgs/applications/virtualization/docker/default.nix +++ b/pkgs/applications/virtualization/docker/default.nix @@ -105,6 +105,8 @@ rec { # systemd install -Dm644 ./contrib/init/systemd/docker.service $out/etc/systemd/system/docker.service + substituteInPlace $out/etc/systemd/system/docker.service --replace /usr/bin/dockerd $out/bin/dockerd + install -Dm644 ./contrib/init/systemd/docker.socket $out/etc/systemd/system/docker.socket ''; DOCKER_BUILDTAGS = [] @@ -178,6 +180,11 @@ rec { '' + optionalString (stdenv.isLinux) '' # symlink docker daemon to docker cli derivation ln -s ${moby}/bin/dockerd $out/bin/dockerd + + # systemd + mkdir -p $out/etc/systemd/system + ln -s ${moby}/etc/systemd/system/docker.service $out/etc/systemd/system/docker.service + ln -s ${moby}/etc/systemd/system/docker.socket $out/etc/systemd/system/docker.socket '' + '' # completion (cli) installShellCompletion --bash ./contrib/completion/bash/docker