Files
linuxkit/pkg/init-container/etc/init.d/010-containerd
Justin Cormack dbe50976c3 Add suitable init for running in a container
This goes with the experimental `docker` output format.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-06-07 15:33:52 +01:00

47 lines
1.0 KiB
Bash
Executable File

#!/bin/sh
# set global ulimits TODO move to /etc/limits.conf
ulimit -n 1048576
ulimit -p unlimited
# bring up containerd
printf "\nStarting containerd\n"
/usr/bin/containerd &
# wait for socket to be there
while [ ! -S /run/containerd/containerd.sock ]
do
sleep 0.1
done
# start onboot containers, run to completion
if [ -d /containers/onboot ]
then
for f in $(find /containers/onboot -mindepth 1 -maxdepth 1 | sort)
do
base="$(basename $f)"
#/bin/mount --bind "$f/rootfs" "$f/rootfs"
#mount -o remount,rw "$f/rootfs"
/usr/bin/runc run --bundle "$f" "$(basename $f)"
printf " - $base\n"
done
fi
# start service containers
if [ -d /containers/services ]
then
for f in $(find /containers/services -mindepth 1 -maxdepth 1 | sort)
do
base="$(basename $f)"
#/bin/mount --bind "$f/rootfs" "$f/rootfs"
#mount -o remount,rw "$f/rootfs"
log="/var/log/$base.log"
ctr run --runtime-config "$f/config.json" --rootfs "$f/rootfs" --id "$(basename $f)" </dev/null 2>$log >$log &
printf " - $base\n"
done
fi
wait