From 36f8cdf91b909bc9334a7afa63a969d6a8b9ce68 Mon Sep 17 00:00:00 2001 From: Adrian Freund Date: Thu, 31 Oct 2024 16:54:35 +0100 Subject: [PATCH] Fix dockerfile not cross compiling correctly (#5294) --- .github/workflows/docker-image.yml | 8 ++++---- Dockerfile | 9 +++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 0b94ed435..4b85258e7 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -36,18 +36,18 @@ jobs: run: echo "TYPST_BUILD_DATE=\"$(date -u +'%Y-%m-%dT%H:%M:%SZ')\" >> $GITHUB_ENV" - name: Setup Docker buildx - uses: docker/setup-buildx-action@v3.1.0 + uses: docker/setup-buildx-action@v3.7.1 with: platforms: ${{ matrix.platform }} - name: Extract Docker metadata id: meta - uses: docker/metadata-action@v5.0.0 + uses: docker/metadata-action@v5.5.1 with: images: ${{ env.IMAGE_NAME }} - name: Log into registry ${{ env.REGISTRY }} - uses: docker/login-action@v3.0.0 + uses: docker/login-action@v3.3.0 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} @@ -55,7 +55,7 @@ jobs: - name: Build Docker image id: build - uses: docker/build-push-action@v5.1.0 + uses: docker/build-push-action@v6.9.0 with: labels: ${{ steps.meta.outputs.labels }} platforms: ${{ matrix.platform }} diff --git a/Dockerfile b/Dockerfile index b6723a013..f118b61d8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,6 @@ -ARG CREATED -ARG REVISION -ARG TARGETPLATFORM - FROM --platform=$BUILDPLATFORM tonistiigi/xx AS xx FROM --platform=$BUILDPLATFORM rust:alpine AS build + COPY --from=xx / / RUN apk add --no-cache clang lld @@ -15,6 +12,8 @@ RUN --mount=type=cache,target=/root/.cargo/git/db \ CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse \ cargo fetch +ARG TARGETPLATFORM + RUN xx-apk add --no-cache musl-dev openssl-dev openssl-libs-static RUN --mount=type=cache,target=/root/.cargo/git/db \ --mount=type=cache,target=/root/.cargo/registry/cache \ @@ -26,6 +25,8 @@ RUN --mount=type=cache,target=/root/.cargo/git/db \ xx-verify target/release/typst FROM alpine:latest +ARG CREATED +ARG REVISION LABEL org.opencontainers.image.authors="The Typst Project Developers " LABEL org.opencontainers.image.created=${CREATED} LABEL org.opencontainers.image.description="A markup-based typesetting system"