Levelrail
Skip to content

Dokploy alternative

Self-hosted deploys without betting on Docker Swarm

Levelrail runs apps on plain Docker with its own reconciler and a small agent per node. No Swarm and no overlay network to debug.

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

Levelrail apps list showing every service, its status and its node

What is different under the hood

A reconciler, not Swarm services

Desired state lives in the database and a level-triggered loop converges each node toward it, recording a status condition with a reason after every pass.

Agent per node, nothing inbound

Each extra server runs a small agent that dials out to the control plane with mutual TLS. Cordon and drain relocate containers between real Docker daemons.

Observability is core

Metrics, full-text logs, crashloop detection with the last log lines, and alerts to 18 notification channel kinds all ship in the box, with no extra stack to install.

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 to see exactly what would be created.

Dokploy and Levelrail, side by side

Dokploy is a polished project built on a mature mechanism. These are the design differences.

DokployLevelrail
Multi-nodeDocker SwarmAgent per node over gRPC with mTLS
OrchestrationSwarm services and Docker ComposeLevel-triggered reconciler over the Docker Engine API
IngressTraefikCaddy embedded in the control plane
Runs asA web application with its own databaseOne Go binary with embedded SQLite
ObservabilityMonitoring features in the dashboardNode-local metrics and log search with deploy markers, federated across agents
Read the full comparison

Evaluate it safely

  1. 1

    Install on a spare box

    Run the install script on any Linux server with outbound access.

  2. 2

    Import read-only

    The importer only reads from Dokploy through its API. Use --dry-run to see the report first.

  3. 3

    Deploy and compare

    Run both for a while. Rollback, readiness gating and the built-in charts are easy to judge side by side.

Frequently asked questions

Does Levelrail use Docker Swarm?

No. It runs plain Docker containers on each node, driven through the Docker Engine API by a reconciler. Placement across nodes is explicit, and cordon and drain are supported.

How do I migrate from Dokploy?

Use the platform importer, levelrail-cli import platform dokploy with your Dokploy URL. It is read-only against the source and supports --dry-run and --only.

Is Levelrail free?

Yes, Apache 2.0 with a single edition and no feature gated behind a plan.

How mature is it?

It is pre-release and moving fast. Single node is the most tested path, and multi-node enrollment, cordon and drain have been verified against real Docker daemons.

See how a Swarm-free setup feels

Install it on a spare server and import read-only. If it is not for you, nothing was changed.

Released under the Apache 2.0 License.