docker-build

Reusable Gitea Actions workflow: runs replace-build-vars, builds a Docker image, tags it according to the ref and pushes it.

Usage

jobs:
  docker:
    uses: templates/docker-build/.gitea/workflows/docker.yaml@v1
    with:
      DockerImageDomain: registry.example.com
      DockerImageOrganisation: my-org
      DockerImageName: my-app
      DockerImageVersion: ${{ github.ref_name }}
      # DockerFilePath: ./Dockerfile
    secrets:
      DockerUsername: ${{ secrets.DOCKER_USERNAME }}
      DockerPassword: ${{ secrets.DOCKER_PASSWORD }}

Inputs / secrets

Name Required Default Description
DockerImageDomain yes Registry domain
DockerImageOrganisation yes Namespace in the registry
DockerImageName yes Image name
DockerImageVersion yes Value for the VERSION build-arg
DockerFilePath no ./Dockerfile Path to the Dockerfile
secret DockerUsername yes Registry user
secret DockerPassword yes Registry password / token

Tags

Every build is tagged :latest, plus one tag based on the ref:

Ref Tag Pushed
master, main :<branch> yes
develop, feature/* branch with / → - yes
git tag :<tag> yes
pull request :pr-<number> yes
any other branch no (build only)

Versioning

Only major tags (v1, v2, …). Fixes move the existing tag. Changing inputs, secrets or tagging behavior needs a new major tag.

History before the move: UltimateCoder/resuable-workflows (@v1–@v3 there remain frozen).

Entscheidungen

Decisions by the owner of the templates org:

  • 2026-10-15: Only major tags (v1, v2, …), no vX.Y.Z tags (see Versioning).
  • 2026-10-17: All repos in the templates org are public, so consumers' runners can fetch them without credentials. They never contain secrets or internal addresses: secrets come in as secrets:, hosts as inputs.
S
Description
Reusable workflow: Docker build & push with branch/tag/PR tagging
Readme
47 KiB
0 Stars 2 Watchers 0 Forks