# This Dockerfile extracts the kernel headers from the kernel image # and then compiles a simple hello world kernel module against them. # In the last stage, it creates a package, which can be used for # testing. FROM linuxkit/kernel:4.9.x AS ksrc # Extract headers and compile module FROM linuxkit/kernel-compile:1b396c221af673757703258159ddc8539843b02b@sha256:6b32d205bfc6407568324337b707d195d027328dbfec554428ea93e7b0a8299b AS build COPY --from=ksrc /kernel-dev.tar / RUN tar xf kernel-dev.tar WORKDIR /kmod COPY ./src/* ./ RUN make all # Package FROM alpine:3.5 COPY --from=build /kmod/hello_world.ko / COPY check.sh /check.sh ENTRYPOINT ["/bin/sh", "/check.sh"]