From 0c65653c5395184695dcee87ec0115b481f0a8ae Mon Sep 17 00:00:00 2001 From: aptalca <541623+aptalca@users.noreply.github.com> Date: Fri, 21 Nov 2025 14:25:38 -0500 Subject: [PATCH 1/2] build and push arm64 docker image --- .github/workflows/docker-image.yml | 4 ++++ Dockerfile | 6 ++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 13d937d3..512076c3 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -48,6 +48,9 @@ jobs: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + - name: Extract metadata (tags and labels) for Docker id: meta uses: docker/metadata-action@v5 @@ -74,3 +77,4 @@ jobs: push: ${{ github.event_name != 'pull_request' }} # Don't push on pull requests tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} + platforms: linux/amd64,linux/arm64 diff --git a/Dockerfile b/Dockerfile index c2d1f321..ba87e6a8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -36,8 +36,10 @@ COPY . . # Stage 2: The Final Image FROM ubuntu:24.04 +ARG TARGETARCH + # Set environment variables for NVIDIA capabilities -ENV NVIDIA_DRIVER_CAPABILITIES all +ENV NVIDIA_DRIVER_CAPABILITIES=all ENV DEBIAN_FRONTEND=noninteractive ENV LD_LIBRARY_PATH=/usr/lib/jellyfin-ffmpeg/lib @@ -53,7 +55,7 @@ RUN apt-get update && \ ca-certificates \ mesa-va-drivers && \ curl -s https://repo.jellyfin.org/ubuntu/jellyfin_team.gpg.key | gpg --dearmor | tee /usr/share/keyrings/jellyfin.gpg >/dev/null && \ - echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu noble main' > /etc/apt/sources.list.d/jellyfin.list && \ + echo "deb [arch=${TARGETARCH} signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu noble main" > /etc/apt/sources.list.d/jellyfin.list && \ curl -fsSL https://deb.nodesource.com/setup_18.x | bash - && \ apt-get install -y --no-install-recommends \ jellyfin-ffmpeg7 \ From 16049d64c1785124645185bd62b40a2c9a1ca8f0 Mon Sep 17 00:00:00 2001 From: aptalca <541623+aptalca@users.noreply.github.com> Date: Fri, 21 Nov 2025 14:38:48 -0500 Subject: [PATCH 2/2] enable docker buildx for multi-platform images --- .github/workflows/docker-image.yml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 512076c3..7cbe7f06 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -48,9 +48,6 @@ jobs: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 - - name: Extract metadata (tags and labels) for Docker id: meta uses: docker/metadata-action@v5 @@ -70,8 +67,14 @@ jobs: type=semver,pattern={{version}} type=semver,pattern={{major}}.{{minor}} + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + - name: Build and push Docker image - uses: docker/build-push-action@v5 + uses: docker/build-push-action@v6 with: context: . push: ${{ github.event_name != 'pull_request' }} # Don't push on pull requests