Ployz deploys are explicit, phase-aware operations. You runDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/getployz/ployz/llms.txt
Use this file to discover all available pages before exploring further.
ployzctl deploy, Ployz inspects the cluster, builds a plan, starts candidate containers, and commits routing facts — in that order. Every step is visible. The deploy either completes cleanly or fails with a clear reason; there is no silent partial state.
Deploying from a manifest
The primary deploy path reads a manifest file that describes your namespace, services, and volumes:| Flag | Description |
|---|---|
-f, --file | Path to the manifest file (TOML or JSON) |
-n, --dry-run | Preview the plan without applying any changes |
Manifest structure
A minimal manifest declares a namespace and at least one service:Previewing a deploy
deploy preview computes the plan against current cluster state and prints it without making any changes. It is equivalent to deploy --dry-run but available as an explicit subcommand:
Deploying a service inline
For quick one-off deploys,deploy service accepts service parameters directly as flags instead of a manifest file:
| Flag | Description |
|---|---|
name | Service name (positional, required) |
--image | Container image reference (required) |
--namespace | Namespace to deploy into (required) |
-p, --publish | Port mapping in HOST:CONTAINER format |
-e, --env | Environment variable in KEY=VALUE format; repeatable |
-v, --volume | Volume mount in SRC:DST format; repeatable |
--network | Network attachment (default: overlay) |
--pull | Force pulling the image before starting |
--restart | Restart policy (default: unless-stopped) |
-n, --dry-run | Preview the service deploy without applying |
Deploy phases
Every deploy moves through a fixed sequence of phases:Plan
Ployz reads the manifest, resolves the current cluster state from the store, and builds a placement plan. It checks image availability, probes participant machines for live capacity, and validates that preconditions are met. The deploy fails here — before any mutation — if preconditions are missing.
Apply
Candidate containers start on their assigned machines. Volume moves and ZFS transfers happen in phase order. For multi-phase deploys, each phase runs to completion before the next begins. The cluster is in transition during this step.
Commit
Ployz appends an immutable deploy commit to the control-plane store. This is the point of no return. Routing facts are published and the gateway and DNS rebuild from the committed state. Traffic switches to the new instances.
The commit boundary
The commit point is where routing flips. Before the first commit, any failure aborts the deploy and the cluster returns to its prior state. After a checkpoint commit, a later failure is reported asFailedAfterCheckpoint — the committed facts remain durable and traffic is already on the new version.
Building images locally
If you need to build a container image before deploying, use thebuild local command:
- Dockerfile
- Railpack
| Flag | Description |
|---|---|
--method | Build method: dockerfile or railpack |
--image | Target image name and tag (required) |
--platform | Target platform (e.g. linux/amd64) |
CONTEXT | Build context directory (positional, required) |
ployzctl image push before deploying with a pull: never policy.
Next steps
Branch and promote
Fork a namespace for a PR, then atomically promote it to production.
Rollback
Restore the previous deploy point, including persistent state.