godot-builder/Containerfile
Sebastian Hugentobler 475a04683d
Some checks failed
Build Multiarch Container Image / call-reusable-workflow (push) Failing after 1m24s
map aarch64 to arm64
2025-01-23 09:02:33 +01:00

32 lines
1.4 KiB
Docker

FROM docker.io/alpine:3.21 AS builder
RUN apk --no-cache add \
curl
ENV GODOT_VERSION=4.3
ENV GODOT_TEMPLATES_HASH=f5f10dbaf56a7908349e64b94ea8c2c93c2cc11fb1014c9565b68a2bb437b922
ENV GODOT_HASH_x86_64=7de56444b130b10af84d19c7e0cf63cf9e9937ee4ba94364c3b7dd114253ca21
ENV GODOT_HASH_aarch64=baaf0b753b86ef52e10c11cc7f65c0bc4696ec793ee052ea88360b31ef5462a2
RUN curl -L -O https://github.com/godotengine/godot/releases/download/$GODOT_VERSION-stable/Godot_v$GODOT_VERSION-stable_export_templates.tpz
RUN eval "echo \"\${GODOT_TEMPLATES_HASH} Godot_v$GODOT_VERSION-stable_export_templates.tpz\" | sha256sum -c -" || exit 1
RUN mkdir -p /export_templates/$GODOT_VERSION.stable
RUN unzip -j Godot_v$GODOT_VERSION-stable_export_templates.tpz -d /export_templates/$GODOT_VERSION.stable/
RUN ARCH=$(arch); if [ "$ARCH" = "aarch64" ]; then ARCH="arm64"; fi; \
curl -L -o /godot.zip https://github.com/godotengine/godot/releases/download/$GODOT_VERSION-stable/Godot_v$GODOT_VERSION-stable_linux.$ARCH.zip
RUN eval "echo \"\${GODOT_HASH_$(arch)} godot.zip\" | sha256sum -c -" || exit 1
RUN unzip godot.zip -d /src
RUN mv /src/Godot_v$GODOT_VERSION-stable_linux.* /src/godot
FROM docker.io/debian:bookworm-slim
RUN apt-get update \
&& apt-get install -y \
libfontconfig1
COPY --from=builder /src/godot /bin/godot
COPY --from=builder /export_templates/ /root/.local/share/godot/export_templates/
ENTRYPOINT ["godot", "--headless", "--path", "/src", "--export-release"]