ci: add GitHub Actions workflow to publish image to GHCR

Mirrors the existing .gitea/workflows/docker-publish.yml but targets
ghcr.io on the GitHub mirror. Simpler than the Gitea version since the
built-in GITHUB_TOKEN has native package-write rights on GHCR, no PAT
secret needed.
This commit is contained in:
2026-07-30 11:42:23 +02:00
parent a4d734de76
commit 8fd2b26d9b
+37
View File
@@ -0,0 +1,37 @@
name: Publish Docker image
on:
push:
branches: [main, master]
tags: ['v*']
permissions:
contents: read
packages: write
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: docker/setup-buildx-action@v3
- name: Compute lowercase image name
run: echo "IMAGE_NAME=$(echo '${{ github.repository }}' | tr '[:upper:]' '[:lower:]')" >> "$GITHUB_ENV"
- name: Log in to GHCR
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v6
with:
context: .
push: true
tags: |
ghcr.io/${{ env.IMAGE_NAME }}:latest
ghcr.io/${{ env.IMAGE_NAME }}:${{ github.sha }}