Slightly simplify the build

This commit is contained in:
2026-04-01 19:28:42 +08:00
parent 9ba8063f19
commit 3e6df38f45
6 changed files with 20 additions and 5 deletions

2
.dockerignore Normal file
View File

@@ -0,0 +1,2 @@
out/*.img.gz
out/*.ext4.zst

View File

@@ -4,6 +4,8 @@ set -euo pipefail
/preload-k8s-images.sh || exit 1 /preload-k8s-images.sh || exit 1
export CTL_BIN_LAYER=$( skopeo inspect docker-daemon:localhost/monok8s/control-agent:dev | jq -r '.Layers[0] | sub("^sha256:"; "")' )
mkdir -p "$ROOTFS/var/cache/apk" mkdir -p "$ROOTFS/var/cache/apk"
mkdir -p "$ROOTFS/opt/monok8s/config" mkdir -p "$ROOTFS/opt/monok8s/config"
mkdir -p "$ROOTFS/build" mkdir -p "$ROOTFS/build"
@@ -25,7 +27,6 @@ mount --bind /run "$ROOTFS/run"
cp /usr/bin/qemu-aarch64-static "$ROOTFS/usr/bin/" cp /usr/bin/qemu-aarch64-static "$ROOTFS/usr/bin/"
cp /etc/resolv.conf "$ROOTFS/etc/resolv.conf" cp /etc/resolv.conf "$ROOTFS/etc/resolv.conf"
cp /build/crio.tar.gz "$ROOTFS/build/" cp /build/crio.tar.gz "$ROOTFS/build/"
cp -r /build/rootfs/* "$ROOTFS/"
chroot "$ROOTFS" /bin/sh -c "ln -s /var/cache/apk /etc/apk/cache" chroot "$ROOTFS" /bin/sh -c "ln -s /var/cache/apk /etc/apk/cache"
# chroot "$ROOTFS" /bin/sh -c "apk update" # chroot "$ROOTFS" /bin/sh -c "apk update"

View File

@@ -34,6 +34,15 @@ fi
sed -i "s/default_runtime = \"crun\"/\0\ncgroup_manager = \"cgroupfs\"/g" /etc/crio/crio.conf.d/10-crio.conf sed -i "s/default_runtime = \"crun\"/\0\ncgroup_manager = \"cgroupfs\"/g" /etc/crio/crio.conf.d/10-crio.conf
grep cgroup_manager /etc/crio/crio.conf.d/10-crio.conf || exit 1 grep cgroup_manager /etc/crio/crio.conf.d/10-crio.conf || exit 1
echo "##################################################### Installing Control Agent"
CTL_BIN=$(find /usr/lib/monok8s/imagestore -name "ctl" | grep "$CTL_BIN_LAYER")
if [ -z "$CTL_BIN" ]; then
echo "Unable to locate the control agent binary"
exit 1
fi
ln -s "$CTL_BIN" /usr/local/bin/ctl
mkdir -p /var/run/crio mkdir -p /var/run/crio
mkdir -p /var/lib/containers/storage mkdir -p /var/lib/containers/storage
mkdir -p /var/lib/cni mkdir -p /var/lib/cni

View File

@@ -15,17 +15,18 @@ RUN mkdir -p "/out/rootfs"
COPY packages/alpine-minirootfs-${ALPINE_VER}-${ALPINE_ARCH}.tar.gz ./alpine.tar.gz COPY packages/alpine-minirootfs-${ALPINE_VER}-${ALPINE_ARCH}.tar.gz ./alpine.tar.gz
COPY packages/${CRIO_VERSION}.tar.gz ./crio.tar.gz COPY packages/${CRIO_VERSION}.tar.gz ./crio.tar.gz
COPY out/board.itb ./ COPY out/board.itb ./
COPY out/rootfs ./rootfs COPY out/rootfs.tar.gz ./rootfs.tar.gz
COPY out/${DEVICE_TREE_TARGET}.dtb ./ COPY out/${DEVICE_TREE_TARGET}.dtb ./
COPY out/Image.gz ./ COPY out/Image.gz ./
RUN tar -xf alpine.tar.gz -C "/out/rootfs" RUN tar zxf rootfs.tar.gz -C "/out"
RUN tar zxf alpine.tar.gz -C "/out/rootfs"
RUN mkdir -p /out/rootfs/usr/local/bin/ RUN mkdir -p /out/rootfs/usr/local/bin/
COPY packages/kubernetes/kubelet-${KUBE_VERSION} /out/rootfs/usr/local/bin/kubelet COPY packages/kubernetes/kubelet-${KUBE_VERSION} /out/rootfs/usr/local/bin/kubelet
COPY packages/kubernetes/kubeadm-${KUBE_VERSION} /out/rootfs/usr/local/bin/kubeadm COPY packages/kubernetes/kubeadm-${KUBE_VERSION} /out/rootfs/usr/local/bin/kubeadm
COPY packages/kubernetes/kubectl-${KUBE_VERSION} /out/rootfs/usr/local/bin/kubectl COPY packages/kubernetes/kubectl-${KUBE_VERSION} /out/rootfs/usr/local/bin/kubectl
COPY clitools/bin/ctl-linux-${ALPINE_ARCH}-${TAG} /out/rootfs/usr/local/bin/ctl # COPY clitools/bin/ctl-linux-${ALPINE_ARCH}-${TAG} /out/rootfs/usr/local/bin/ctl
RUN chmod +x /out/rootfs/usr/local/bin/* RUN chmod +x /out/rootfs/usr/local/bin/*
COPY alpine/rootfs-extra ./rootfs-extra COPY alpine/rootfs-extra ./rootfs-extra

View File

@@ -21,6 +21,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
flex \ flex \
git \ git \
gettext-base \ gettext-base \
jq \
kmod \ kmod \
libelf-dev \ libelf-dev \
libssl-dev \ libssl-dev \

View File

@@ -47,6 +47,7 @@ RUN depmod -b /out/rootfs $(ls /out/rootfs/lib/modules/)
RUN find /out/kernel -name "${DEVICE_TREE_TARGET}.dtb" -exec cp {} /out/ \; RUN find /out/kernel -name "${DEVICE_TREE_TARGET}.dtb" -exec cp {} /out/ \;
RUN test -f "/out/${DEVICE_TREE_TARGET}.dtb" RUN test -f "/out/${DEVICE_TREE_TARGET}.dtb"
RUN cd /out && tar zcf rootfs.tar.gz rootfs
FROM scratch FROM scratch
ARG DEVICE_TREE_TARGET ARG DEVICE_TREE_TARGET
@@ -57,4 +58,4 @@ COPY --from=build \
/out/kernel/Image.gz \ /out/kernel/Image.gz \
/out/${DEVICE_TREE_TARGET}.dtb \ /out/${DEVICE_TREE_TARGET}.dtb \
./ ./
COPY --from=build /out/rootfs/ ./rootfs COPY --from=build /out/rootfs.tar.gz ./rootfs.tar.gz