Cheatsheet

Todos os grupos de comandos e subcomandos, num só sítio. Gerado do --help real do binário.

Tarefas comuns

Serviço web, sem root, sem daemon
delonix container run -d --name web -p 8080:80 nginx
Shell descartável
delonix container run --rm -it alpine sh
Rede própria + publicar pelo ingress
delonix network create backend
delonix container run -d --net backend -p 8443:443 caddy
Trocar uma porta a QUENTE (sem reiniciar)
delonix container update web --publish-add 9090:80
Firewall: só deixar entrar Postgres da SDN
delonix net ingress allow db tcp/5432 --from 10.219.0.0/16
delonix net ingress policy db deny
Firewall: egress da rede só p/ DNS + CIDRs
delonix net egress net backend allowlist --to 10.0.0.0/8
Tráfego por container ao vivo (eBPF)
sudo delonix net flow --watch
Volume de rede de um NAS (NFS)
delonix storage create media --type nfs --server 10.0.0.5 --share /mnt/pool/media
Segredo no cofre (não no argv)
printf 'password=s3nha' | delonix secret create db-pass --from-env-file -
Expor um container à internet pública (sem conta, sem router)
delonix container run -d --name web --expose 80 nginx
delonix net tunnel expose --provider pinggy --local-port 8080
tunnel/tunnel-8080: running — https://oxipg-197-148-40-67.free.pinggy.net
NAS partilhado por vários tenants, cada um com a sua quota
delonix storage create nas --type nfs --server 10.0.0.5 --share /pool/data
delonix sharevolume apply -f sharevolume.yaml
microVM com cloud-init
delonix vm create node1 --disk base.qcow2 --ssh-key @~/.ssh/id_ed25519.pub
Cluster Kubernetes do zero
delonix cluster kubeadm --name lab --control-plane 1 --workers 2
Aplicar um manifesto inteiro
delonix stack apply -f delonix-manifest.yaml
Persistir os containers no arranque
delonix net boot enable
Recuperar espaço (GC)
delonix system prune

Todos os grupos

delonix container

ComandoO que faz
container dashDashboard (KPIs + table + problems) of the containers — interactive TUI, or `--once` for a text snapshot
container initInitialize a project with a Delonixfile + manifest — files ALREADY FILLED IN (images included), ready to use without editing anything
container runRun a container from an image (pulls it if missing)
container psList containers [alias: ls]
container start(Re)start stopped/crashed containers, reusing the persistent rootfs (writes made inside the container survive, like in docker) and the same network/ports/volumes as the original `run`. Always detached
container stopStop one or more containers (SIGTERM, then SIGKILL)
container killSend a signal to one or more containers (default SIGKILL) — unlike `stop`, does not wait or force a `Stopped` status: the real outcome (e.g. `Crashed` for a `KILL`) is picked up on the next observation
container waitBlock until one or more containers exit, then print their exit code (one per line, in the order given)
container restartStop then start one or more containers (reuses the persistent rootfs and the original run configuration, like `start`)
container renameGive a container a new name
container portPublished ports of a container (`hostPort/proto -> containerPort`)
container rmRemove one or more containers
container pauseSuspend a container's processes (cgroup v2 freezer) — the state stays in memory, unlike `stop`. Resume with `unpause`
container unpauseResume a container suspended with `pause`
container commitCreate an image from a container's CURRENT rootfs state (whatever was written inside becomes a new layer)
container sshInteractive shell inside a container (shortcut for `exec -t`): with no command, it tries `bash` and falls back to `sh`, which exists in any image
container healthcheckRun the image's `HEALTHCHECK` inside the container. Exits with 1 if `unhealthy` — usable in a script/CI
container topProcesses running inside a container (read from `cgroup.procs`)
container diffFiles changed relative to the image: `A` = created/changed, `D` = deleted
container cpCopy files between the host and a container. Exactly one side is `container:/path` (e.g. `delonix container cp web:/etc/nginx.conf .`)
container execExecute a command inside a running container
container inspectShow the full spec of one or more containers (Store JSON)
container describeHuman-readable detail of one or more containers, `kubectl describe`-style (for humans; use `inspect` for script-consumable JSON)
container update**Reconfigure a RUNNING container without stopping it** — ports, volumes, networks, and bandwidth cap
container statsResource usage (CPU/memory/PIDs) of the running containers — one sample and exits (no stream). With no IDs, shows all running ones
container logsShow the logs (detached containers)
container attachRe-attach to a running container's output stream (same log file `logs -f` reads). Unlike `docker attach`, this is OUTPUT-ONLY: a detached container's stdin has nowhere to go (this engine keeps no live conduit to it once started, unlike a persistent per-container shim) — `-i`/`--stdin` is refused with a clear error instead of silently doing nothing
container applyApply the `kind: Container` documents of a manifest (idempotent by name — an existing container with that name is neither recreated nor checked for spec drift, see `cmd::manifest`)

delonix workload

ComandoO que faz
workload lsList all workloads — containers AND VMs — in one table (or `-o json`)
workload describeDescribe a workload by name (routed to the owning backend, kubectl-style)
workload stopStop a workload by name (routed to the owning backend)
workload rmRemove a workload by name

delonix pod

ComandoO que faz
pod createCreate a pod (N containers sharing a netns) from a manifest (`kind: Pod`)
pod lsList the pods (derived from container labels)
pod describeDetails of one or more pods (containers + the shared IP), `kubectl` style
pod rmRemove a pod: stop/remove ALL its containers + the shared netns
pod logsLogs of a pod's container (defaults to the first member)

delonix image

ComandoO que faz
image dashDashboard (KPIs + table) of images — interactive TUI, or `--once` snapshot
image pullPull an image from a registry. With `--vm`, no argument = the OFFICIAL Delonix golden VM image
image ls-remote(only with `--vm`) List the tags available in a remote OCI repository — with no argument, the OFFICIAL Delonix golden image repo
image lsList local images
image describeHuman-readable detail of one or more images, `kubectl describe`-style (tags/digest/size/layers + the OCI config: entrypoint/cmd/env/workdir). With `--vm`, describes golden VM images
image tagGive another name/tag to a local image (copies nothing — it's just a new name for the same content)
image historyLayers of an image (digest + size), from base to top
image verifyVerify the cosign signature of a local image against a public key
image scanSBOM + CVE scan of an image (reads the layers from the CAS, without running anything). Pulls the image if missing. See `--sbom`, `--fail-on`, `--update`
image rmRemove a local image
image exportExport an OCI runtime bundle (rootfs + config.json) for `runc`/`crun`
image saveSave an image to a portable archive (`docker save`'s counterpart) — the way to move an image to another machine with no registry. The archive is an OCI layout WITH the legacy `manifest.json`, so `delonix image load`, `docker load`, `podman load` and `ctr images import` all read it
image loadLoad an image from an archive produced by `delonix image save`, `docker save` or `podman save` (the counterpart of `save`)
image applyApply the `kind: Image` documents of a manifest (`pull` idempotent by reference; `build` rebuilds and replaces the tag on each apply)
image loginAuthenticate to an OCI registry (stores the credentials in `<root>/auth.json`, docker/podman format). The password ALWAYS comes from stdin — never from an argument (it would end up in the shell history and in /proc)
image logoutRemove the stored credentials of a registry
image vmGolden VM images (`<root>/vm-images/`): ls/pull/push/build. Equivalent to `image --vm <cmd>` (old form, kept)
image pushPublish a local image to an OCI registry. Without `target`, publishes under the image's own reference. With `--vm`, `target` is required
image init(only with `--vm`) Build the golden VM image (Ubuntu + kubeadm/kubelet/ kubectl + `delonix-cri`). Scaffold a `VMfile` (and a cloud-init) for building your own image
image build

delonix build

Constrói uma imagem a partir de um Dockerfile ou Delonixfile.

delonix vm

ComandoO que faz
vm dashDashboard (KPIs + table) of the VMs — interactive TUI, or `--once` snapshot
vm initBootstrap a project with a VM manifest — files ALREADY FILLED IN (images included), ready to use without editing anything
vm createCreate (or auto-recover) a VM
vm buildBuild a qcow2 VM image from a `VMfile`
vm pullPull a golden VM image from an OCI registry — with no argument, the OFFICIAL Delonix image (ready for `vm create`/`cluster kubeadm`)
vm ls-remoteList the tags available in a remote OCI repository — with no argument, the OFFICIAL Delonix golden image repo (discover which k8s versions are published before `pull`)
vm pushPush a local golden VM image to an OCI registry (`vm push <name> <target>`)
vm lsList the VMs
vm consoleAttach to the VM's serial console (interactive terminal) — works with no IP (boot logs, login). Escape: Ctrl-]
vm vncPrint the VNC address of a graphical VM (created with `--vnc`, libvirt)
vm statusCurrent state (reconciles liveness/IP with the backend)
vm reach
vm bridgeEXPERIMENTAL (root): give a libvirt VM DIRECT IP reachability to a container SDN network (veth from the host into the holder netns + routes). Defaults to a DRY-RUN; add `--apply` (as root) to establish it
vm unbridgeTear down a `vm bridge` (dry-run without `--apply`)
vm describeHuman-readable detail of one or more VMs, `kubectl describe` style (for humans; use `status` for the usual compact view). Includes the LIVE state — `delonix_vm::status` reconciles liveness/IP with the backend
vm stopStop the VM (preserves disk/record)
vm startStart an existing, stopped VM — idempotent (already running = no-op). Reboots with the base disk/vcpus/memory/network/backend recorded at its last `create`/`start`, reusing the same overlay (disk state preserved). Does NOT restore anything that only ever existed as a `vm create` flag (custom kernel/seed/volumes/static IP/VNC/advanced libvirt knobs) — a VM using those needs the original `vm create` invocation instead (also idempotent/auto-heal)
vm restartStop (if running) then start — always a real reboot, unlike `start`. Same recovered-fields limits as `start`
vm rmRemove the VM (stops + deletes overlay/state)
vm snapshotTake a named snapshot (libvirt: a running VM's snapshot is a system checkpoint — memory + disk; `restore` reverts to it). Not yet supported on the cloud-hypervisor backend
vm restoreRevert the VM to a named snapshot
vm snapshotsList the VM's snapshots
vm applyApply the `kind: Vm` documents of a manifest (`delonix_vm::create` is already idempotent by name — creates or auto-recovers)

delonix volumes

ComandoO que faz
volumes createCreate a named volume
volumes lsList the volumes
volumes inspectDetails of a volume (includes real on-disk usage)
volumes describeReadable detail of one or more volumes, `kubectl describe` style (for humans; use `inspect` for the usual compact view)
volumes rmRemove a volume. Refuses while a container or a `kind: ShareVolume` still references it (use `--force` to remove it anyway)
volumes applyApply the `kind: Volume` documents from a manifest (idempotent by name)
volumes snapshotPoint-in-time snapshots of a volume (tar.gz under the volume; safe in rootless)

delonix network

ComandoO que faz
network dashDashboard (KPIs + table) of the networks — interactive TUI, or `--once` snapshot
network lsList the networks
network nodeWireGuard identity of THIS node, for the encrypted VXLAN overlay between nodes (`network create --driver overlay`). The private key stays 0600 in `<root>/wg/node.key`; the public one is what you hand out to the peers
network createCreate a network
network inspectDetail of a network
network describeReadable detail of one or more networks, `kubectl describe` style (for humans; use `inspect` for the usual compact view)
network rmRemove a network
network applyApply the `kind: Network` documents of a manifest (idempotent by name)

delonix stack

ComandoO que faz
stack initInitializes a COMPLETE project: Delonixfile + manifest + cluster + README — files ALREADY FILLED IN (images included), ready to use without editing anything
stack applyApplies all the manifest Kinds (Network → Volume → Image → Vm → Container)
stack lsStack detail in `kubectl describe` style: each resource DECLARED in the manifest and whether or not it is present on the machine
stack describe
stack validateValidates the manifest WITHOUT touching anything (dry-run): resolves the cross-references (`Container.network`/`.volumes`, `Vm.network`, `Ingress/Egress. target`) against what the manifest declares PLUS what already exists in the stores. Exits with an error if any reference is left unresolved — it is the safety net against an `apply` that would only fail halfway through (fail-fast, no rollback)

delonix compose

ComandoO que faz
compose upCreates/starts every service — build, then network, then volume, then containers in `depends_on` order (gated on the declared condition)
compose downRemoves every container this project's `up` created (and, with `-v`, its named volumes). Networks/volumes marked `external: true` are NEVER removed
compose psContainers of this project (derived from labels)
compose logsLogs of one service (default: every service, one after another)
compose configValidates and prints the resolved project, without creating anything (`docker compose config` equivalent)

delonix cluster

ComandoO que faz
cluster initInitialize a project with the cluster manifests (kind/vm/ssh) — files ALREADY FILLED IN (images included), ready to use without editing anything
cluster createCreate a local Kubernetes cluster **without a manifest and without Docker** (native kind mode): starts the `kindest/node` nodes in the Delonix engine itself and bootstraps them with `kubeadm`. No flags = 1 control-plane ready to use
cluster lsList the clusters and the state of their nodes [alias: list]
cluster deleteRemove a kind-mode cluster (stops and deletes the nodes + kubeconfig)
cluster loadLoad local images into a kind-mode cluster's nodes, **without a registry** (the equivalent of `kind load docker-image`): packs each image from the local store and imports it into every running node's containerd
cluster kubeGenerate a Kubernetes manifest from a container/pod already running locally (`kube generate`) — the "ran it locally, now give me the YAML for k8s" path (equivalent to `podman generate kube`)
cluster applyApply the `kind: Cluster` document(s) of a manifest
cluster kubeadmProvision VMs (golden VM image) + `kubeadm` bootstrap — from zero to a working cluster, without writing a manifest by hand

delonix secret

ComandoO que faz
secret createCreate/replace a secret from literals and/or a `.env` file
secret lsList the secrets (name + number of keys; values NEVER shown)
secret inspectShow the keys of a secret (values redacted, unless `--reveal`)
secret setSet/update keys in a secret (creates it if it does not exist)
secret unsetRemove a key from a secret (or the whole secret with `--all`)
secret rmRemove a secret
secret rotate-keyRotate the host master key: re-encrypt ALL secrets with a new key. The values are preserved
secret applyApply the `kind: Secret` documents from a manifest (declarative — creates the secret without needing `secret create` on the CLI)

delonix storage

ComandoO que faz
storage dashStorage/volumes dashboard (KPIs + table) — TUI, or `--once` snapshot
storage createCreate (and mount) a network storage
storage lsList the network storages (volumes with a network driver)
storage inspectDetails of a storage
storage rmRemove (and unmount) a storage. The DATA stays on the NAS — only the local mount is torn down, like docker
storage applyApply the `kind: Storage` documents from a manifest

delonix sharevolume

ComandoO que faz
sharevolume applyApply the `kind: ShareVolume` documents of a manifest (idempotent)
sharevolume lsList share volumes (parent storage, quota, live usage)
sharevolume describeHuman-readable detail of one share volume
sharevolume rmUn-register a share volume. The underlying data (a subdirectory of the parent Storage) is PRESERVED unless `--purge-data` is passed

delonix net ingress

ComandoO que faz
net ingress allowAllow inbound traffic to a container: `[proto/]port` from an optional CIDR
net ingress denyDeny inbound traffic to a container (same shape as `allow`)
net ingress policySet the default inbound policy when no rule matches
net ingress publishPublish a host port to the container (DNAT through the ingress)
net ingress unpublishRemove a published host port
net ingress lsShow the inbound firewall (policy + rules) and published ports
net ingress rmRemove inbound rule(s) matching `[proto/]port` (all protos if none given)
net ingress clearRemove all inbound rules (keeps published ports)

delonix net egress

ComandoO que faz
net egress allowAllow outbound traffic from a container: `[proto/]port` to an optional CIDR
net egress denyDeny outbound traffic from a container (same shape as `allow`)
net egress policySet the default outbound policy when no rule matches
net egress netGovern a whole network's egress to the Internet
net egress hostAllow a network's egress to a HOSTNAME (and `*.hostname`), learnt live from DNS answers — the FQDN allowlist nft/CIDR can't express. Repeatable
net egress lsShow the outbound firewall (policy + rules)
net egress rmRemove outbound rule(s) matching `[proto/]port` (all protos if none given)
net egress showShow a NETWORK's egress policy: CIDR allowlist, FQDN hosts, and the IPs currently learnt from DNS for those hosts
net egress clearRemove all outbound rules

delonix net httproute

ComandoO que faz
net httproute lsState of the proxy + active routes (from the config in effect)
net httproute applyApply the HTTPRoutes of a manifest (brings up/reloads the proxy)
net httproute rmStop the proxy and unpublish the ports (teardown)

delonix net tunnel

ComandoO que faz
net tunnel applyApply the `kind: Tunnel` documents of a manifest (idempotent)
net tunnel exposeOne-shot expose of a local port, no manifest needed
net tunnel lsList tunnels (state + public URL)
net tunnel describeHuman-readable detail of one tunnel
net tunnel rmStop and remove a tunnel

delonix net flow

Tráfego por-container ao vivo — datapath eBPF (degrada para contadores veth).

delonix net boot

ComandoO que faz
net boot enableInstall + enable systemd units for the RUNNING containers, so they come back up when the host boots. Rootless uses user units + linger
net boot disableDisable + remove the generated boot units
net boot statusShow boot-persistence status (installed units + mode)

delonix system

ComandoO que faz
system eventsEngine events (create/start/die/remove/…), from oldest to most recent. With no daemon, the log is a shared append-only file — each command appends its own line (see `delonix_runtime_core::events`)
system infoEngine state: rootless?, cgroup delegation, network infra, counts
system setupDiagnose — and, with `--delegate`, fix — cgroup delegation, the prerequisite for `--memory`/`--cpus`/`--pids-limit` to mean anything
system dfDisk usage by area (images, containers, volumes, VM images)
system virtHost virtualization: hypervisor, KVM, virtio — and what there is to tune
system pruneReclaim space: remove stopped containers, unused images, CAS blobs nobody references, empty cgroups and — the biggest space saver — **orphan container directories** (from nodes/containers that died abruptly without `rm`, with no registry entry)
system monitorActive network connections per container (via conntrack): who comes in, who goes out, and between containers. Refreshes continuously (see `--no-stream`)
system thermalThermal governor: lowers Delonix's CPU budget when the CPU heats up and restores it when it cools down. Runs continuously (see `--once`)

delonix dash

Dashboard de resumo/KPIs (TUI estilo htop) — RAM/rede/disco, uptime por-container, JSON e Prometheus.

delonix serve docker-api

Fatia da API Docker Engine, num socket unix — ciclo de vida completo de um container, não só leitura.

delonix cluster kube

ComandoO que faz
cluster kube generateGenerates a `kind: Pod` from a container (or from every member of a pod) and prints it to stdout

delonix net netns

ComandoO que faz
net netns upBring the ingress infra up (idempotent): holder netns + delonix0 + single slirp
net netns statusShow the ingress infra status (holder/slirp pids, bridge, refcount)
net netns downForce tear-down of the ingress infra (kills slirp + holder, frees the netns)
net netns attachAttach a netns to delonix0 via veth (the holder is the netns/veth factory)
net netns detachDetach (and destroy) a previously attached netns
net netns execRun a command inside an attached netns (exercises the runtime join path)
net netns publishPublish a port through the ingress (add_hostfwd + DNAT) to a container
net netns unpublishUnpublish a host port from the ingress
net netns firewallApply (or clear) a container's parameterizable firewall AT THE INGRESS

delonix completion

Autocompletion dinâmico para bash, zsh, fish, elvish e powershell.

delonix serve cri

Serve o endpoint CRI (runtime.v1) num socket unix.

Global

--l18n en|pt — idioma da saída (EN por omissão; pt para pt_AO). $DELONIX_ROOT — raiz do estado. delonix completion <shell> — autocompletion.