ARG REPO=mcr.microsoft.com/dotnet/runtime-deps # Installer image FROM mcr.microsoft.com/azurelinux/base/core:3.0 AS installer RUN tdnf install -y \ ca-certificates \ gzip \ tar \ && tdnf clean all # Retrieve .NET Runtime RUN dotnet_version=10.0.11 \ && curl --fail --show-error --location \ --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm64.tar.gz \ --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 \ && sha512sum -c dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 \ && mkdir --parents /usr/share/dotnet \ && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_version-linux-arm64.tar.gz --directory /usr/share/dotnet \ && rm \ dotnet-runtime-$dotnet_version-linux-arm64.tar.gz \ dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 RUN mkdir /dotnet-symlink \ && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet # .NET runtime image FROM $REPO:10.0.11-azurelinux3.0-distroless-extra-arm64v8 # .NET Runtime version ENV DOTNET_VERSION=10.0.11 COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] COPY --from=installer ["/dotnet-symlink", "/usr/bin"] ENTRYPOINT ["/usr/bin/dotnet"] CMD ["--info"]