podplane push
Push an app image from Podplane’s local registry to the current cluster’s container image registry through a Kubernetes port-forward.
podplane push <local-image> [<remote-image>] [flags]This is the promotion path for images built with podplane build: build and test locally, then push the same apps/ image to another Podplane cluster.
For example:
# build your app image
podplane build -t api:v1
# deploy it in your local cluster to test it
podplane deploy web --name api --image default-registry.local/apps/api:v1
# now push it to your remote cluster
podplane push api:v1
# and deploy it in your remote cluster using that cluster's registry hostname
podplane deploy web --name api --image prod-registry.example.com/apps/api:v1If <remote-image> is omitted, Podplane pushes to:
<cluster.registry.hostname>/<source-app-repository>:<source-tag-or-latest>Source images are normalized the same way as podplane build output. These are equivalent source refs:
api:v1
apps/api:v1
default-registry.local/apps/api:v1All resolve to apps/api:v1 in Podplane’s local registry cache.
If <remote-image> omits a registry hostname, Podplane prefixes cluster.registry.hostname. Remote images must be under apps/**; mirror/** is reserved for Podplane-managed dependency mirrors.
If the source image is not in Podplane’s local registry cache, Podplane checks Docker’s local image store. When a matching Docker image exists, Podplane asks before importing and pushing it. Use --auto-approve to skip the prompt, --docker=/path/to/docker to choose a Docker binary, or --docker=false to disable this fallback.
Options
| Flag | Description |
|---|---|
--context string | Kubeconfig context to use. Defaults to the current kubeconfig context. |
--kubeconfig string | Path to the kubeconfig file. |
--docker[=PATH|false] | Use Docker as a fallback source, optionally with a Docker binary path. Defaults to docker; use --docker=false to disable fallback. |
-y, --auto-approve | Skip confirmation prompts. |
The command requires the zot-registry component to be installed and ready in platform-zot-registry in the target cluster.