Files
actions/docker-publish/README.md
Ismo Vuorinen 7061aafd35 chore: add tests, update docs and actions (#299)
* docs: update documentation

* feat: validate-inputs has it's own pyproject

* security: mask DOCKERHUB_PASSWORD

* chore: add tokens, checkout, recrete docs, integration tests

* fix: add `statuses: write` permission to pr-lint
2025-10-18 13:09:19 +03:00

4.4 KiB

ivuorinen/actions/docker-publish

Docker Publish

Description

Publish a Docker image to GitHub Packages and Docker Hub.

Inputs

name description required default
registry

Registry to publish to (dockerhub, github, or both).

true both
nightly

Is this a nightly build? (true or false)

false false
platforms

Platforms to build for (comma-separated)

false linux/amd64,linux/arm64,linux/arm/v7
auto-detect-platforms

Automatically detect and build for all available platforms

false false
scan-image

Scan images for vulnerabilities

false true
sign-image

Sign images with cosign

false false
cache-mode

Cache mode for build layers (min, max, or inline)

false max
buildx-version

Specific Docker Buildx version to use

false latest
verbose

Enable verbose logging

false false
dockerhub-username

Docker Hub username for authentication

false ""
dockerhub-password

Docker Hub password or access token for authentication

false ""
token

GitHub token for authentication

false ""

Outputs

name description
registry

Registry where image was published

tags

Tags that were published

build-time

Total build time in seconds

platform-matrix

Build status per platform

scan-results

Vulnerability scan results if scanning enabled

image-id

Published image ID

image-digest

Published image digest

repository

Repository where image was published

Runs

This action is a composite action.

Usage

- uses: ivuorinen/actions/docker-publish@main
  with:
    registry:
    # Registry to publish to (dockerhub, github, or both).
    #
    # Required: true
    # Default: both

    nightly:
    # Is this a nightly build? (true or false)
    #
    # Required: false
    # Default: false

    platforms:
    # Platforms to build for (comma-separated)
    #
    # Required: false
    # Default: linux/amd64,linux/arm64,linux/arm/v7

    auto-detect-platforms:
    # Automatically detect and build for all available platforms
    #
    # Required: false
    # Default: false

    scan-image:
    # Scan images for vulnerabilities
    #
    # Required: false
    # Default: true

    sign-image:
    # Sign images with cosign
    #
    # Required: false
    # Default: false

    cache-mode:
    # Cache mode for build layers (min, max, or inline)
    #
    # Required: false
    # Default: max

    buildx-version:
    # Specific Docker Buildx version to use
    #
    # Required: false
    # Default: latest

    verbose:
    # Enable verbose logging
    #
    # Required: false
    # Default: false

    dockerhub-username:
    # Docker Hub username for authentication
    #
    # Required: false
    # Default: ""

    dockerhub-password:
    # Docker Hub password or access token for authentication
    #
    # Required: false
    # Default: ""

    token:
    # GitHub token for authentication
    #
    # Required: false
    # Default: ""