From 049d5de6a89fbcd60a5e16e922229f1df9fb8a99 Mon Sep 17 00:00:00 2001 From: librelad Date: Sat, 23 May 2026 22:02:42 +0100 Subject: [PATCH] fix(rootless): start daemon with slirp4netns, not invalid pasta+builtin The rootless dockerd override forced NET=pasta + PORT_DRIVER=builtin, which rootlesskit rejects ('pasta requires port driver none or implicit'), so the daemon failed to start every time (the real cause behind 'rootless socket not found'). Use slirp4netns + builtin (valid, still skips the userspace port-handler). Verified: daemon now comes up, docker Server 29.5.2 responds. Co-Authored-By: Claude Opus 4.7 Signed-off-by: librelad --- scripts/docker/install/rootless/rootless_docker.sh | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/scripts/docker/install/rootless/rootless_docker.sh b/scripts/docker/install/rootless/rootless_docker.sh index 416fba2..ce0aa8f 100755 --- a/scripts/docker/install/rootless/rootless_docker.sh +++ b/scripts/docker/install/rootless/rootless_docker.sh @@ -111,13 +111,14 @@ EOF ((menu_number++)) echo "" - echo "---- $menu_number. Configuring rootless networking (pasta + builtin port driver)." + echo "---- $menu_number. Configuring rootless networking (slirp4netns + builtin port driver)." echo "" - # pasta replaces slirp4netns as the net namespace driver — higher - # throughput, lower latency, native IPv6, much better UDP. The - # builtin rootlesskit port driver skips the slirp4netns userspace - # port-handler and shaves per-connection overhead. + # slirp4netns is the net namespace driver; the builtin rootlesskit port + # driver skips slirp4netns's userspace port-handler and shaves + # per-connection overhead. (pasta is faster but requires a recent passt + # AND port driver none/implicit — the pasta+builtin combo is rejected by + # rootlesskit, which silently kept the rootless daemon from starting.) systemd_user_dir="/home/$CFG_DOCKER_INSTALL_USER/.config/systemd/user" local result=$(dockerCommandRunInstallUser "mkdir -p $systemd_user_dir") checkSuccess "Create the systemd user directory if it doesn't exist" @@ -131,7 +132,7 @@ EOF sudo bash -c "cat < '$override_conf_file' [Service] -Environment='DOCKERD_ROOTLESS_ROOTLESSKIT_NET=pasta' +Environment='DOCKERD_ROOTLESS_ROOTLESSKIT_NET=slirp4netns' Environment='DOCKERD_ROOTLESS_ROOTLESSKIT_PORT_DRIVER=builtin' Environment='DOCKERD_ROOTLESS_ROOTLESSKIT_MTU=$CFG_NETWORK_MTU' EOL"