GitHub Actions docker/metadata-action Produces Empty Tags
docker/metadata-action generated no tags or labels, so the subsequent build/push has nothing to tag. Usually the images input is missing or the tag rules do not match the current event.
What this error means
The metadata step succeeds but steps.meta.outputs.tags is empty, and docker/build-push-action either pushes an untagged image or fails because no tags were provided.
.github/workflows/ci.yml
# meta produced nothing because no images were given
- id: meta
uses: docker/metadata-action@v5
# tags: ${{ steps.meta.outputs.tags }} -> emptyCommon causes
Missing images input
metadata-action needs the images input (the registry/repo) to construct tags. Without it, the tag list is empty even if tag rules are defined.
Tag rules do not match the event
The default and custom tag rules are event-sensitive (for example type=ref or type=semver). On an event none of the rules target, no tags are generated.
How to fix it
Provide images and explicit tag rules
.github/workflows/ci.yml
- id: meta
uses: docker/metadata-action@v5
with:
images: ghcr.io/${{ github.repository }}
tags: |
type=ref,event=branch
type=semver,pattern={{version}}
- uses: docker/build-push-action@v6
with:
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}Match tag rules to the trigger
- Give the metadata step an id and read steps.<id>.outputs.tags.
- Add a type=sha or type=raw tag so something is always produced.
- Ensure semver rules only fire on tag events, and ref rules on branch/PR events.
How to prevent it
- Always pass the images input to metadata-action.
- Include a fallback tag rule (type=sha) so tags are never empty.
- Read tags/labels via the step id outputs.
Related guides
GitHub Actions aws-actions/amazon-ecr-login Fails to AuthenticateFix aws-actions/amazon-ecr-login errors - missing AWS credentials in the job, no ecr:GetAuthorizationToken pe…
GitHub Actions Docker Action "image platform does not match host"Fix GitHub Actions Docker-based action platform errors - an arm64 action image on an amd64 runner (or vice ve…
GitHub Actions softprops/action-gh-release "Resource not accessible by integration"Fix softprops/action-gh-release failing to publish a release - missing contents: write permission, or a non-t…