Files
obscura/.github/workflows/docker.yml
Paul Eipper 9e63557f63 ci: build and push multi-arch images (amd64 + arm64) (#223)
Add QEMU setup and multi-platform build to the Docker workflow so
the image is published with both linux/amd64 and linux/arm64
support, enabling native execution on Apple Silicon and other
ARM64 hosts.
2026-06-02 21:50:26 +02:00

46 lines
1.1 KiB
YAML

name: Docker
on:
push:
tags:
- 'v*'
permissions:
contents: read
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Extract version from tag
id: version
run: echo "version=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
- name: Build and push
uses: docker/build-push-action@v6
with:
context: .
push: true
build-args: |
OBSCURA_VERSION=${{ steps.version.outputs.version }}
tags: |
${{ secrets.DOCKERHUB_USERNAME }}/obscura:${{ steps.version.outputs.version }}
${{ secrets.DOCKERHUB_USERNAME }}/obscura:latest
platforms: linux/amd64,linux/arm64
cache-from: type=gha
cache-to: type=gha,mode=max