diff --git a/.github/workflows/build-container.yml b/.github/workflows/build-container.yml index f212173d4b830c0e4bde88f1d09b26b3db5538e9..622309591fadf1f1e13e2366106ac8d3ff0c5249 100644 --- a/.github/workflows/build-container.yml +++ b/.github/workflows/build-container.yml @@ -12,7 +12,7 @@ on: env: REGISTRY: ghcr.io - IMAGE_NAME: gluon-build + IMAGE_NAME: ${{ github.repository }}-build jobs: build-and-push-image: @@ -21,6 +21,10 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v4 + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 - name: Log in to the Container registry uses: docker/login-action@3d58c274f17dffee475a5520cbe67f0a882c4dbb if: ${{ github.repository_owner == 'freifunk-gluon' && github.event_name == 'push' }} @@ -32,11 +36,12 @@ jobs: id: meta uses: docker/metadata-action@e6428a5c4e294a61438ed7f43155db912025b6b3 with: - images: ${{ env.REGISTRY }}/freifunk-gluon/${{ env.IMAGE_NAME }} + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} - name: Build and push Docker image uses: docker/build-push-action@4a13e500e55cf31b7a5d59a38ab2040ab0f42f56 with: context: ./contrib/docker push: ${{ github.repository_owner == 'freifunk-gluon' && github.event_name == 'push' }} + platforms: linux/amd64,linux/arm64 tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} diff --git a/contrib/docker/Dockerfile b/contrib/docker/Dockerfile index 61cf918de5ebfcdb74994bf621c775ddad150305..e303e5e570bff446dc9245166faa99d3fff12a32 100644 --- a/contrib/docker/Dockerfile +++ b/contrib/docker/Dockerfile @@ -1,5 +1,8 @@ FROM debian:bookworm-slim +ARG TARGETOS +ARG TARGETARCH + ARG DEBIAN_FRONTEND=noninteractive RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates \ @@ -27,9 +30,9 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ && rm -rf /var/lib/apt/lists/* RUN mkdir /tmp/ec &&\ - wget -O /tmp/ec/ec-linux-amd64.tar.gz https://github.com/editorconfig-checker/editorconfig-checker/releases/download/2.7.0/ec-linux-amd64.tar.gz &&\ - tar -xvzf /tmp/ec/ec-linux-amd64.tar.gz &&\ - mv bin/ec-linux-amd64 /usr/local/bin/editorconfig-checker &&\ + wget -O /tmp/ec/ec-${TARGETOS}-${TARGETARCH}.tar.gz https://github.com/editorconfig-checker/editorconfig-checker/releases/download/2.7.0/ec-${TARGETOS}-${TARGETARCH}.tar.gz &&\ + tar -xvzf /tmp/ec/ec-${TARGETOS}-${TARGETARCH}.tar.gz &&\ + mv bin/ec-${TARGETOS}-${TARGETARCH} /usr/local/bin/editorconfig-checker &&\ rm -rf /tmp/ec RUN useradd -m -d /gluon -u 100 -g 100 -o gluon