lol

docker: add rootless daemon script

+9 -1
+9 -1
pkgs/applications/virtualization/docker/default.nix
··· 15 15 , go-md2man, go, containerd_1_4, runc, docker-proxy, tini, libtool 16 16 , sqlite, iproute2, lvm2, systemd, docker-buildx, docker-compose_2 17 17 , btrfs-progs, iptables, e2fsprogs, xz, util-linux, xfsprogs, git 18 - , procps, libseccomp 18 + , procps, libseccomp, rootlesskit, slirp4netns, fuse-overlayfs 19 19 , nixosTests 20 20 , clientOnly ? !stdenv.isLinux, symlinkJoin 21 21 }: ··· 77 77 78 78 extraPath = optionals (stdenv.isLinux) (makeBinPath [ iproute2 iptables e2fsprogs xz xfsprogs procps util-linux git ]); 79 79 80 + extraUserPath = optionals (stdenv.isLinux) (makeBinPath [ rootlesskit slirp4netns fuse-overlayfs ]); 81 + 80 82 postPatch = '' 81 83 patchShebangs hack/make.sh hack/make/ 82 84 ''; ··· 109 111 install -Dm644 ./contrib/init/systemd/docker.service $out/etc/systemd/system/docker.service 110 112 substituteInPlace $out/etc/systemd/system/docker.service --replace /usr/bin/dockerd $out/bin/dockerd 111 113 install -Dm644 ./contrib/init/systemd/docker.socket $out/etc/systemd/system/docker.socket 114 + 115 + # rootless Docker 116 + install -Dm755 ./contrib/dockerd-rootless.sh $out/libexec/docker/dockerd-rootless.sh 117 + makeWrapper $out/libexec/docker/dockerd-rootless.sh $out/bin/dockerd-rootless \ 118 + --prefix PATH : "$out/libexec/docker:$extraPath:$extraUserPath" 112 119 ''; 113 120 114 121 DOCKER_BUILDTAGS = [] ··· 184 191 '' + optionalString (!clientOnly) '' 185 192 # symlink docker daemon to docker cli derivation 186 193 ln -s ${moby}/bin/dockerd $out/bin/dockerd 194 + ln -s ${moby}/bin/dockerd-rootless $out/bin/dockerd-rootless 187 195 188 196 # systemd 189 197 mkdir -p $out/etc/systemd/system