summary refs log tree commit diff
path: root/os/etc/s6-rc/src/containerd-srv/run
diff options
context:
space:
mode:
Diffstat (limited to 'os/etc/s6-rc/src/containerd-srv/run')
-rw-r--r--os/etc/s6-rc/src/containerd-srv/run32
1 files changed, 32 insertions, 0 deletions
diff --git a/os/etc/s6-rc/src/containerd-srv/run b/os/etc/s6-rc/src/containerd-srv/run
new file mode 100644
index 0000000..b1e529a
--- /dev/null
+++ b/os/etc/s6-rc/src/containerd-srv/run
@@ -0,0 +1,32 @@
+#!/bin/execlineb -P
+
+# privileged:
+#s6-softlimit -p = -o 1048576
+#exec /usr/bin/containerd
+
+# rootless:
+envfile /etc/s6-rc/config/containerd.conf
+importas -iu containerd_namespace containerd_namespace
+export CONTAINERD_NAMESPACE ${containerd_namespace}
+
+importas -iu containerd_snapshotter containerd_snapshotter
+export CONTAINERD_SNAPSHOTTER ${containerd_snapshotter}
+
+importas -iu containerd_rootless_net containerd_rootless_net
+export CONTAINERD_ROOTLESS_ROOTLESSKIT_NET ${containerd_rootless_net}
+
+importas -iu containerd_rootless_port_driver containerd_rootless_port_driver
+export CONTAINERD_ROOTLESS_ROOTLESSKIT_PORT_DRIVER ${containerd_rootless_port_driver}
+
+#TODO: doesn't work because containerd doesn't listen on stdin
+#and ipcserverd passes the fd to it's stdin/stdout
+#
+#importas -iu containerd_socket containerd_socket
+#foreground { echo "retrieving..." }
+#s6-fdholder-retrieve ${containerd_socket} unix:${containerd_socket}
+#foreground { echo "pickup..." }
+#s6-ipcserverd
+#foreground { echo "exec..." }
+
+fdmove -c 2 1
+runas /usr/bin/containerd-rootless.sh