diff --git a/Dockerfile b/Dockerfile index 29d97c7..eaa6997 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,36 +1,37 @@ -FROM ubuntu:bionic AS build +FROM ubuntu:focal AS build COPY uml.config /uml.config -ENV LINUX_VERSION linux-4.19.57 -ENV LINUX_DOWNLOAD_URL https://cdn.kernel.org/pub/linux/kernel/v4.x/${LINUX_VERSION}.tar.xz + +ENV LINUX_VERSION linux-5.10.47 +ENV LINUX_DOWNLOAD_URL https://cdn.kernel.org/pub/linux/kernel/v5.x/${LINUX_VERSION}.tar.xz + RUN apt-get update \ - && apt-get -y install build-essential flex bison xz-utils wget ca-certificates bc linux-headers-4.15.0-47-generic \ + && apt-get -y install build-essential flex bison xz-utils wget ca-certificates bc \ && wget ${LINUX_DOWNLOAD_URL} \ && tar xJf ${LINUX_VERSION}.tar.xz \ && rm ${LINUX_VERSION}.tar.xz \ && cd ${LINUX_VERSION} \ && cp /uml.config .config \ - && make ARCH=um -j10 \ + && make ARCH=um olddefconfig \ + && make ARCH=um -j17 \ && mv ./linux / \ && cd .. \ && rm -rf ${LINUX_VERSION} FROM xena/alpine -COPY --from=build /linux /linux ADD https://xena.greedo.xeserv.us/files/slirp /slirp # Add Tini -ENV TINI_VERSION v0.18.0 +ENV TINI_VERSION v0.19.0 ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini-static /chroot/tini -RUN chmod +x /chroot/tini # Set up chroot -RUN cd /chroot \ - && wget -O - http://dl-cdn.alpinelinux.org/alpine/v3.10/releases/x86_64/alpine-minirootfs-3.10.0-x86_64.tar.gz | tar xz \ - && chmod +x /linux \ - && chmod +x /slirp +RUN wget -O - http://dl-cdn.alpinelinux.org/alpine/v3.12/releases/x86_64/alpine-minirootfs-3.12.7-x86_64.tar.gz | tar xz -C /chroot + +COPY --from=build /linux /linux COPY init.sh /chroot/init.sh COPY resolv.conf /chroot/etc/resolv.conf +RUN chmod +x /linux /slirp /chroot/tini COPY runlinux.sh /runlinux.sh CMD /runlinux.sh