docker: add rootless daemon script
This commit is contained in:
parent
f92057a195
commit
721fde93ff
1 changed files with 9 additions and 1 deletions
|
@ -15,7 +15,7 @@ rec {
|
|||
, go-md2man, go, containerd_1_4, runc, docker-proxy, tini, libtool
|
||||
, sqlite, iproute2, lvm2, systemd, docker-buildx, docker-compose_2
|
||||
, btrfs-progs, iptables, e2fsprogs, xz, util-linux, xfsprogs, git
|
||||
, procps, libseccomp
|
||||
, procps, libseccomp, rootlesskit, slirp4netns, fuse-overlayfs
|
||||
, nixosTests
|
||||
, clientOnly ? !stdenv.isLinux, symlinkJoin
|
||||
}:
|
||||
|
@ -77,6 +77,8 @@ rec {
|
|||
|
||||
extraPath = optionals (stdenv.isLinux) (makeBinPath [ iproute2 iptables e2fsprogs xz xfsprogs procps util-linux git ]);
|
||||
|
||||
extraUserPath = optionals (stdenv.isLinux) (makeBinPath [ rootlesskit slirp4netns fuse-overlayfs ]);
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs hack/make.sh hack/make/
|
||||
'';
|
||||
|
@ -109,6 +111,11 @@ rec {
|
|||
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
|
||||
|
||||
# rootless Docker
|
||||
install -Dm755 ./contrib/dockerd-rootless.sh $out/libexec/docker/dockerd-rootless.sh
|
||||
makeWrapper $out/libexec/docker/dockerd-rootless.sh $out/bin/dockerd-rootless \
|
||||
--prefix PATH : "$out/libexec/docker:$extraPath:$extraUserPath"
|
||||
'';
|
||||
|
||||
DOCKER_BUILDTAGS = []
|
||||
|
@ -184,6 +191,7 @@ rec {
|
|||
'' + optionalString (!clientOnly) ''
|
||||
# symlink docker daemon to docker cli derivation
|
||||
ln -s ${moby}/bin/dockerd $out/bin/dockerd
|
||||
ln -s ${moby}/bin/dockerd-rootless $out/bin/dockerd-rootless
|
||||
|
||||
# systemd
|
||||
mkdir -p $out/etc/systemd/system
|
||||
|
|
Loading…
Reference in a new issue