Quick install
Modes
| Mode | Flag | Description | Root |
|---|---|---|---|
| Control plane | (default) | Full control plane with networking, Firecracker, and systemd service | Yes |
| Agent | --agent | Worker host agent with gRPC, Firecracker, and systemd service | Yes |
| CLI | --cli | CLI binary only | No |
Flags
| Flag | Description | Applies to | Default |
|---|---|---|---|
--agent | Install agent mode | — | Control plane mode |
--cli | Install CLI mode | — | Control plane mode |
--version=VERSION | Pin to a specific version | All | Latest |
--base-url=URL | Override release download base URL | All | https://releases.zwrm.eu/zwrmd |
--control-plane-url=URL | Control plane URL (required for agent) | Agent | — |
--region=REGION | Region label | Agent | — |
--datacenter=DC | Datacenter label | Agent | — |
--license-key=KEY | License key injected into config | Control plane, Agent | — |
--yes, -y | Non-interactive, auto-confirm prompts | All | false |
--uninstall | Remove installation | All | false |
--dry-run | Show what would be done | All | false |
--no-start | Install but don’t start the service | Control plane, Agent | false |
What gets installed
Control plane
| Step | Description |
|---|---|
| 1 | Download zwrmd binary to /usr/local/bin/zwrmd (checksum verified) |
| 2 | Create directories: /etc/zwrm, /var/lib/zwrm/images, /var/lib/zwrm/cache, /var/lib/zwrm/certs, /var/lib/zwrm/secrets |
| 3 | Download dropbear SSH server to /usr/local/share/zwrmd/dropbear |
| 4 | Generate /etc/zwrm/config.toml via zwrmd --generate-config |
| 5 | Enable IP forwarding and install iptables-persistent |
| 6 | Download Firecracker and kernel (if not present) |
| 7 | Install zwrmd.service systemd unit |
| 8 | Enable and start the service |
Agent
| Step | Description |
|---|---|
| 1 | Download zwrm-agent binary to /usr/local/bin/zwrm-agent (checksum verified) |
| 2 | Create directories: /etc/zwrm, /var/lib/zwrm/image-cache |
| 3 | Generate /etc/zwrm/agent.toml with auto-detected CPU and memory capacity |
| 4 | Enable IP forwarding |
| 5 | Download Firecracker and kernel (if not present) |
| 6 | Install zwrm-agent.service systemd unit |
| 7 | Enable and start the service |
CLI
Downloads thezwrm binary to /usr/local/bin/zwrm (as root) or ~/.local/bin/zwrm (non-root).
Firecracker and kernel
During control plane and agent installation, the script checks for Firecracker and the kernel image. If either is missing, it prompts to download them (auto-confirmed with--yes or piped stdin).
| Component | Path | Version |
|---|---|---|
| Firecracker | /usr/local/bin/firecracker | v1.10.1 |
| Kernel | /opt/firecracker/vmlinux-5.10.bin | 5.10.230 |
Release channels
| Channel | URL | Use case |
|---|---|---|
| Stable | https://releases.zwrm.eu/zwrmd | Production |
| Canary | https://releases.zwrm.eu/zwrmd/canary | Testing new builds before promotion |