name: Build and Push Docker Image on Release on: release: types: [published] jobs: build-and-push: runs-on: docker-builder steps: - name: Checkout repository uses: actions/checkout@v4 - name: Enable QEMU for multi-arch builds run: | docker run --privileged --rm tonistiigi/binfmt --install all - name: Create and use Docker Buildx builder run: | docker buildx create --name miauinv-builder --use || docker buildx use miauinv-builder docker buildx inspect --bootstrap - name: Log in to Gitea Container Registry run: | echo "${{ secrets.REGISTRY_TOKEN }}" | docker login git.miaurizius.de \ --username "${{ secrets.REGISTRY_USER }}" \ --password-stdin - name: Prepare Docker image tags run: | IMAGE_REPO="$(echo "git.miaurizius.de/${{ gitea.repository }}" | tr '[:upper:]' '[:lower:]')" echo "IMAGE_REPO=$IMAGE_REPO" >> "$GITHUB_ENV" - name: Build and push multi-arch Docker image run: | docker buildx build \ --platform linux/amd64,linux/arm64 \ --file ./Dockerfile \ --tag "$IMAGE_REPO:latest" \ --tag "$IMAGE_REPO:${{ gitea.event.release.tag_name }}" \ --push \ .