Skip to main content
Build and push container images for packages and modules that ship a Dockerfile. The command logs in once with your saved credentials, then for each target builds the image with docker build and pushes it with docker push, tagged <username>/<name>:<tag>. Targets without a Dockerfile are skipped. Publishing requires Docker credentials saved with docker:credentials:create.
This command shells out to the Docker CLI (docker), so docker must be installed, on your PATH, and able to reach a running daemon. On Debian and Ubuntu, sudo apt install docker.io is enough; other platforms are covered in the Docker installation guide. Verify with docker version.

Usage

Examples

Build and push every package and module that has a Dockerfile:
Publish specific packages (comma-separated):
Publish specific modules:
Override the image tag (defaults to the package.json version, else latest):

Options

With neither --packages nor --modules, every directory under packages/ and modules/ is treated as a candidate. Only those that ship a Dockerfile are built: a discovered target without one is reported as ignored, while an explicitly named target without one is an error. For any registry other than docker.io, the image reference is prefixed with the registry host (for example ghcr.io/ooneex/gateway:1.2.0). At the end the command prints a summary of how many targets were published versus ignored. See Publish to Docker Hub for the full workflow, including CI setup.