NAME
Dist::Zilla::Plugin::Docker::API - Build and publish Docker images as Dist::Zilla release artifacts
VERSION
version 0.103
SYNOPSIS
[Docker::API]
image = ghcr.io/example/my-app
tag = latest
tag = %V
tag = %v
dockerfile = Dockerfile
build_load = 1
release_push = 1
Or via the @Author::GETTY bundle:
[@Author::GETTY::Docker / runtime]
image = ghcr.io/example/my-app
tags = latest %V %v
DESCRIPTION
This plugin builds and publishes Docker images as release artifacts derived from the Dist::Zilla-built distribution.
BEHAVIOR
| Dzil command | Docker behavior | |---|---| | dzil build | Build image, apply every tag, load into daemon (if build_load=1), no push | | dzil release | Re-tag the built image with every tag, push (if release_push=1), load (if release_load=1) |
The same tag list is used in both phases — dzil build produces local tags for verification, dzil release re-applies them (against the already-built image) and pushes if configured.
CONFIGURATION
image- Full image repository (required). Example:ghcr.io/user/my-apptag- Tags applied to the image (can be repeated, template-enabled). Default:latest,%V, and%v(e.g.latest,0,0.402). Applied identically in both build and release. Note: settingtagexplicitly replaces the default list, it does not append to it.dockerfile- Dockerfile name (default:Dockerfile)build_load- Load built image into local Docker daemon (default: true)release_push- Push to registry during release (default: true)release_load- Load released image locally (default: false)fail_if_tag_exists- Error if tag already exists on remoteskip_latest_on_trial- Skiplatesttag for trial releasesbuild_arg- Build arguments (can be repeated, template-enabled)label- OCI labels (can be repeated, template-enabled)platform- Target platform (can be repeated)
DEPRECATED
The following names are still accepted but emit a warning and will be removed in a future release:
build_tag,release_tag-
Replaced by the single
tagattribute. When either is given, the values are merged (build_tag first, release_tag second) intotagand a deprecation warning is emitted. Iftagis also set explicitly, it wins and the legacy values are ignored. repository- Useimageinstead.phase- No longer needed; build and release phases are implicit.push- Userelease_pushinstead.load- Usebuild_loadinstead.
SEE ALSO
Dist::Zilla::Plugin::Docker::API::TagTemplate, Dist::Zilla::Plugin::Docker::API::Client, Dist::Zilla::Plugin::Docker::API::Result
SUPPORT
Issues
Please report bugs and feature requests on GitHub at https://github.com/Getty/p5-dist-zilla-plugin-docker-api/issues.
CONTRIBUTING
Contributions are welcome! Please fork the repository and submit a pull request.
AUTHOR
Torsten Raudssus <getty@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2026 by Torsten Raudssus <torsten@raudssus.de> https://raudssus.de/.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.