penguin/monok8s

k8s image for Mono Gateway Dev Kit

alpine/rootfs-extra/etc/local.d/monok8s.start

raw ยท 746 bytes

#!/bin/sh
set -eu

exec >>/var/log/monok8s/boot.log 2>&1

export PATH="/usr/local/bin:/usr/local/sbin:$PATH"

mkdir -p /dev/hugepages
mountpoint -q /dev/hugepages || mount -t hugetlbfs none /dev/hugepages
echo 640 > /proc/sys/vm/nr_hugepages

CUR=$(grep '^BOOT_PART=' /run/monok8s/boot-state.env | cut -d= -f2-)
LAST=$(cat /opt/monok8s/config/.bootpart 2>/dev/null || true)

if [ "$CUR" != "$LAST" ]; then
	echo "Slot changed ($LAST -> $CUR), cleaning runtime state"

	rm -rf /var/lib/containers \
		/var/lib/kubelet/pods \
		/var/lib/kubelet/plugins \
		/var/lib/kubelet/device-plugins

	mkdir -p /var/lib/containers /var/lib/kubelet
fi

/usr/local/bin/ctl init --env-file /opt/monok8s/config/cluster.env >>/var/log/monok8s/bootstrap.log 2>&1 &