Skip to main content
1

Install the CLI

Install the zwrm CLI binary:
curl -fsSL https://releases.zwrm.eu/zwrm/install.sh | bash
This installs to /usr/local/bin/zwrm (as root) or ~/.local/bin/zwrm (as non-root).
Verify the installation:
zwrm --help
2

Log in

Authenticate with your ZWRM account:
zwrm auth login
This opens your browser to complete the login flow. For headless environments like SSH sessions, use a token instead:
zwrm auth login --token <your-api-token>
3

Initialize your app

Navigate to your project directory (where your Dockerfile lives) and run:
zwrm init
This creates a zwrm.toml file with sensible defaults. You can pass --name to set the app name explicitly:
zwrm init --name my-app
4

Deploy

zwrm deploy
ZWRM builds your Docker image, converts it to a Firecracker microVM, and starts it. You’ll see build logs streamed in real-time, followed by a health check and your app’s public URL.
5

Check status

zwrm status
See your running machines, their IPs, and recent deployments.

Claude Code skills

If you use Claude Code, install the ZWRM skills to manage your infrastructure directly from the AI assistant:
npx -y skills add zwrm-eu/skills --full-depth --global --all --yes
This installs skills for deploying apps, managing sandboxes, Postgres databases, secrets, logs, and coding agents. Once installed, Claude Code can run zwrm commands on your behalf — just ask it to deploy, scale, create a database, or spin up a sandbox.

Next steps

Configuration

Customize VM size, services, health checks, and more.

Secrets

Set environment variables and encrypted secrets.

Volumes

Attach persistent storage to your VMs.

PostgreSQL

Spin up a managed Postgres database.