CapRover: A Self-Hosted Heroku on Docker Swarm

CapRover: A Self-Hosted Heroku on Docker Swarm

CapRover turns one or more servers into your own platform-as-a-service: push your code, or pick an app from a catalogue, and CapRover builds it, runs it in Docker, gives it a domain and an HTTPS certificate, and keeps it running. It is one of the longest-standing self-hosted Heroku alternatives.

Features

  • One-click apps: WordPress, databases (PostgreSQL, MySQL, MariaDB, MongoDB, Redis), and hundreds of community templates
  • Deploy your own apps in Node.js, Python, PHP, Ruby, Go, or anything with a Dockerfile
  • Docker Swarm clustering, so adding servers adds capacity
  • nginx load balancing with customisable templates
  • Free TLS certificates through Let’s Encrypt
  • A web dashboard and a CLI for deployments
  • No lock-in: apps are ordinary Docker services and keep running if CapRover itself is removed

Deployment

CapRover installs on a fresh server with Docker, using a one-line container start documented on its site, followed by caprover serversetup from your workstation to set the root domain. Point a wildcard DNS record (for example *.apps.example.com) at the server so each app gets a subdomain automatically.

CapRover, Coolify, Dokku, or Dokploy?

CapRoverCoolifyDokkuDokploy
InterfaceWeb + CLIWebCLI (git push)Web
Multi-serverDocker SwarmSSH to serversSingle hostSwarm
One-click appsLarge catalogueLarge cataloguePluginsTemplates
StyleMature, stableFast-movingMinimal, scriptableNewer

CapRover’s strength is maturity and a simple mental model. Coolify has more momentum and a more modern interface; Dokku suits people who want git push and nothing else.

License

Apache License 2.0.