Introduction
How JEKYO compares
Coolify, CapRover, Dokploy, and Kamal are all good tools, and for some setups one of them is the better choice. Here is where each one stands, including the rows we lose.
The table
| JEKYO | Coolify | CapRover | Dokploy | Kamal | |
|---|---|---|---|---|---|
| Runs on | Kubernetes (k3s) | Docker | Docker Swarm | Docker Swarm | Docker over SSH |
| Configured by | One jekyo.yaml + CLI | Web dashboard | Web dashboard | Web dashboard | deploy.yml + CLI |
| Web dashboard | No (terminal UI) | Yes | Yes | Yes | No |
| Built for AI agents | Skill pack, --json, render preview | Not a focus | Not a focus | Not a focus | Not a focus |
| Automatic TLS | Yes | Yes | Yes | Yes | Yes |
| Private registry | Ships preconfigured on your server | Optional, local images by default | Bring your own | Bring your own | Required, bring your own |
| Rollbacks | Every deploy is a versioned release; one command or a picker in the terminal UI | To locally available images | One-click revert | On failed health checks, or via your registry | To previous local image, pruned after 3 days |
| Volume backups | Scheduled, encrypted, to S3 or local disk; restore is one command | Database backups to S3 | Manual guide | Database and volume backups | Not built in |
| GPU workloads | First-class: installer sets up drivers and runtime, gpu: in the yaml | Not built in | Not built in | Not built in | Not built in |
| One-click apps | 300+ | 280+ | ~200 | Templates | None |
| Multi-server | One server today (k3s can grow; not the focus yet) | Yes | Yes | Yes | Yes |
| Maturity | Young, pre-1.0 | Large community | Long established | Growing fast | From 37signals, battle-tested |
Checked against each project's documentation in August 2026. If a cell has gone stale, file an issue and we will fix it.
What actually differs
Most of the table collapses into three real differences.
What is underneath. JEKYO is the only one built on Kubernetes. That is where sidecars, network policies, per-app isolation, and versioned rollbacks come from, and it is why jekyo render can show you the exact resources a deploy creates. The others are built on Docker or Swarm, which is simpler internally but caps what the platform can express. JEKYO's bet is that you get the primitives without ever looking at them.
How you drive it. Coolify, CapRover, and Dokploy are dashboards: you click your infrastructure together, and the dashboard is the source of truth. JEKYO and Kamal are files: your app's entire shape lives in the repo, diffable and reviewable. JEKYO goes one step further and treats the CLI as an API for AI agents, with a skill pack, --json output on read commands, and a render step an agent can check before it ships. If you want an agent operating your servers, that is the difference that matters.
What "backup" means. JEKYO backs up volumes: encrypted, scheduled in the app file, to S3 or a local disk, with one-command restore. Elsewhere backups mostly mean database dumps (Coolify), a manual procedure (CapRover), or are not built in (Kamal). Dokploy is the strongest of the group here, with both database and volume backups.
Pick them instead when
Coolify if you want a web dashboard and the largest community in the segment. It is the most popular tool in this space for a reason, and its one-click catalog is nearly as large as ours.
CapRover if you want the most established option and a gentle web UI. It has been doing this reliably for years.
Dokploy if you want a dashboard plus multi-server deploys today, with solid backups.
Kamal if you are all-in on the 37signals way: plain Docker, your own registry, zero-downtime deploys, and nothing else. It is the closest to JEKYO in spirit (config in the repo, CLI-driven) without the platform features.
Pick JEKYO when
You want one file in the repo to be the whole truth, real Kubernetes underneath without learning it, volumes that back themselves up, GPUs that just schedule, and a platform your AI agent can operate as well as you can. On a server you own, with a bill that is just the server.
curl -fsSL https://jekyo.com/install | sh
Your first deploy is about ten minutes away.