mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-12-26 07:52:47 +00:00
DNS lookups fail in qemu-user when it is built on Alpine: https://bugs.alpinelinux.org/issues/8131 Until this is resolved, we fetch the binaries from Debian and use those instead. The final stage of the Dockerfile is still based on scratch. We can revert this once the Alpine issue is fixed. Signed-off-by: Justin Barrick <jbarrick@cloudflare.com>
23 lines
835 B
Docker
23 lines
835 B
Docker
# Use Debian stretch until https://bugs.alpinelinux.org/issues/8131 is resolved.
|
|
FROM debian@sha256:de3eac83cd481c04c5d6c7344cd7327625a1d8b2540e82a8231b5675cef0ae5f AS qemu
|
|
RUN apt-get update && apt-get install -y qemu-user-static && \
|
|
mv /usr/bin/qemu-aarch64-static /usr/bin/qemu-aarch64 && \
|
|
mv /usr/bin/qemu-arm-static /usr/bin/qemu-arm && \
|
|
mv /usr/bin/qemu-ppc64le-static /usr/bin/qemu-ppc64le
|
|
|
|
FROM linuxkit/alpine:1b05307ae8152e3d38f79e297b0632697a30c65c AS mirror
|
|
|
|
RUN apk add --no-cache go musl-dev
|
|
ENV GOPATH=/go PATH=$PATH:/go/bin
|
|
|
|
COPY main.go /go/src/binfmt/
|
|
RUN go-compile.sh /go/src/binfmt
|
|
|
|
FROM scratch
|
|
ENTRYPOINT []
|
|
WORKDIR /
|
|
COPY --from=qemu usr/bin/qemu-* usr/bin/
|
|
COPY --from=mirror /go/bin/binfmt usr/bin/binfmt
|
|
COPY etc/binfmt.d/00_linuxkit.conf etc/binfmt.d/00_linuxkit.conf
|
|
CMD ["/usr/bin/binfmt"]
|