Levelrail
Skip to content

CapRover alternative

Keep the simple CapRover workflow, drop the Swarm dependency

Levelrail runs apps on plain Docker containers with its own reconciler and a small agent per extra server. Git push to deploy, automatic HTTPS, rollback and an importer for your CapRover apps.

curl -fsSL https://levelrail.com/install.sh | sudo sh

Where Levelrail differs

No Swarm, plain Docker

Apps run as ordinary containers. A level-triggered reconciler compares desired and observed state and converges, recording a reason after every pass.

Agent per node

Extra servers run a small agent that dials out to the control plane with mutual TLS, so managed servers need no inbound port.

Observability included

Node-local metrics, full-text log search, crashloop detection and alerts to eighteen channels ship in the core, with deploy markers on the charts.

Bring your apps with you

The importer reads your existing instance through its own HTTP API and never changes anything there. Run it with --dry-run first.

CapRover and Levelrail, side by side

CapRover is a long-standing project with a large install base and a one-click app store. These are the design differences.

CapRoverLevelrail
Server managementDocker SwarmAgent per node over gRPC with mutual TLS, Docker Engine API
OrchestrationSwarm servicesLevel-triggered reconciler over plain Docker
IngressnginxCaddy embedded in the control plane
Runs asA web application running as a Swarm serviceOne Go binary with embedded SQLite
LicenseOpen sourceApache 2.0, one edition
Read the full comparison

Move over safely

  1. 1

    Install on a spare server

    One script checks the host, installs Docker if missing and starts the control plane.

  2. 2

    Dry-run the importer

    Point it at your CapRover URL with --dry-run. The importer is read-only against the source.

  3. 3

    Import and compare

    Import a subset with --only, deploy it, and run both for a while before switching DNS.

Frequently asked questions

Does Levelrail need Docker Swarm?

No. It runs plain Docker containers on each node. Placement across servers is explicit, and cordon and drain are supported.

How do I migrate from CapRover?

Use levelrail-cli import platform caprover with your CapRover URL. It is read-only against the source and supports --dry-run and --only.

Does it have a one-click app store?

Levelrail ships a curated template catalog and is expanding it, but CapRover's app store is larger today. Check that the services you need are covered.

Is it free?

Yes. Apache 2.0, one edition, nothing behind a paywall.

Try it beside your CapRover setup

Import read-only, run both, and keep what works.

Released under the Apache 2.0 License.