From a5aa482b6c565136c8085b1669205b408da843c0 Mon Sep 17 00:00:00 2001 From: Andrew Rabert Date: Mon, 21 Jan 2019 22:47:51 -0500 Subject: Update arm/arm64 images to build cross-platform These Dockerfiles can not be built natively - must be built on x86_64 --- Dockerfile.arm64 | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Dockerfile.arm64 (limited to 'Dockerfile.arm64') diff --git a/Dockerfile.arm64 b/Dockerfile.arm64 new file mode 100644 index 0000000000..33b20793ed --- /dev/null +++ b/Dockerfile.arm64 @@ -0,0 +1,31 @@ +ARG DOTNET_VERSION=3.0 + + +FROM multiarch/qemu-user-static:x86_64-aarch64 as qemu +FROM alpine as qemu_extract +COPY --from=qemu /usr/bin qemu_user_static.tgz +RUN tar -xzvf qemu_user_static.tgz + + +FROM microsoft/dotnet:${DOTNET_VERSION}-sdk-stretch-arm64v8 as builder +COPY --from=qemu_extract qemu-* /usr/bin +WORKDIR /repo +COPY . . +#TODO Remove or update the sed line when we update dotnet version. +RUN export DOTNET_CLI_TELEMETRY_OPTOUT=1 \ + && find . -type f -exec sed -i 's/netcoreapp2.1/netcoreapp3.0/g' {} \; \ + && dotnet clean \ + && dotnet publish \ + --configuration release \ + --output /jellyfin \ + Jellyfin.Server + + +FROM microsoft/dotnet:${DOTNET_VERSION}-runtime-stretch-slim-arm64v8 +COPY --from=qemu_extract qemu-* /usr/bin +COPY --from=builder /jellyfin /jellyfin +EXPOSE 8096 +RUN apt-get update \ + && apt-get install -y ffmpeg +VOLUME /config /media +ENTRYPOINT dotnet /jellyfin/jellyfin.dll -programdata /config -- cgit v1.2.3