A rocket standing on its launch pad, the ring at its base lit cyan.

Self-hosted PaaS: which Heroku alternative to pick

Three tools run sites and apps on a server you control, but only two of them replace Heroku. Coolify and Openship start from code: hand them a repository and they build the app, run it and serve it over HTTPS on your domain. Coolify's v4 has been stable since April 2026, and its dashboard runs on a server of your own or is rented from Coolify Cloud; Openship's repository dates from March 2026, the project is at 0.8, and it can also be driven from a desktop app. OpenPanel does cPanel's job instead: it creates hosting accounts, each isolated in its own containers, free for up to three accounts, and its licence forbids reselling hosting without the paid edition.

Deploying from code or managing hosting accounts

A Heroku-style PaaS starts from an application's code. Coolify takes a GitHub, GitLab, Bitbucket or Gitea repository, a Dockerfile, a Docker Compose file or a prebuilt image, and its README pitches it as a self-hostable alternative to Heroku, Netlify and Vercel. Openship takes a GitHub repository, a local folder or a prebuilt artifact, and reads package.json and the lockfiles to work out the build and start commands. Both redeploy on every push, run databases and scheduled backups next to the apps, and keep a way back: a retained image in Coolify, a config snapshot in Openship.

A cPanel-style hosting panel starts from the customer account. In OpenPanel, the administrator sets up accounts and plans in OpenAdmin, and each customer manages their domains, PHP sites, MySQL databases and WordPress from the OpenPanel interface. A traditional panel shares one Apache, one MySQL and one PHP runtime across every account on the server. OpenPanel gives each account its own containers (web server, database, PHP-FPM, private network, volume), and each plan caps the account's CPU, memory and disk. The vendor pitches it as a replacement for cPanel, Plesk, DirectAdmin and CyberPanel, with a comparison page for each.

Where the dashboard runs

Coolify installs its dashboard on a Linux server and drives the machines that host your apps over SSH. The localhost server every install starts with lets you put everything on one machine, but the apps then share the dashboard's resources, and the docs warn that a build there can make the machine unresponsive. The README recommends one server for Coolify and others for the apps. Coolify Cloud rents you the dashboard instead. Leaving Coolify breaks nothing, according to its README: configurations stay on the servers and resources keep running.

Openship's control plane runs in one of three ways. The desktop app, for macOS, Windows and Linux, runs it on your machine with no account, and only while the app is open; with no public address it can't receive webhooks, so there's no push-to-deploy and no team access. The README aims it at solo developers. A server instance, started with openship up and left running, adds both, with login required. Bare mode is a single process with an embedded database that deploys to other servers over SSH. Openship's homepage sets the desktop app against Coolify, Dokploy and Dokku, whose control plane has to stay up around the clock, and claims a second difference: taking over a server already in use by adopting its running containers without rebuilding them.

OpenPanel installs on the hosting server itself: OpenAdmin listens on port 2087 by default, and the customer interface on port 2083.

What each tool needs to run

Read from the repositories and documentation on 7 October 2026.

ToolLicenceWhat you runOS and memoryStarts fromLatest release
CoolifyApache-2.0Docker 24 or later, PostgreSQL 15, Redis 7; a Traefik or Caddy proxy on each managed serverLinux, amd64 or arm64; 2 cores and 2 GB, apps not includedGit repository, Dockerfile, Compose or image4.4.1, 7 Oct 2026
OpenshipApache-2.0, iRedMail mail engine under GPL v3Docker, Postgres, Redis, API, dashboard, OpenResty edge; or one process with an embedded databaseLinux for server mode; no documented minimumGitHub repository, local folder or artifact0.8.2, 6 Oct 2026
OpenPanelvendor EULA, CC BY-NC 4.0 for OpenCLIrootless Podman per account (Docker before 2.0), Caddy, BIND9, MySQLfull VM or bare metal; Ubuntu 24.04 on x86 for Community; 1 GB stated, 3 GB from the first accounthosting account: PHP sites, WordPress2.0.14, 5 Oct 2026

The Coolify server runs three containers: Coolify itself, PostgreSQL 15 and Redis 7, on a Docker install that the script sets up if it's missing, refusing the snap package. Every managed server also gets a proxy, Traefik by default or Caddy, on ports 80 and 443, and the dashboard opens ports 8000, 6001 and 6002 until you put it behind a domain. The documented minimum of 2 cores, 2 GB of RAM and 10 GB of disk leaves your apps out, and the script warns below 30 GB of total disk.

In server mode, Openship starts Postgres, Redis, its API, its dashboard and an OpenResty edge that takes ports 80 and 443 on the host network, which is why that mode is Linux only. Its installation page sets no minimum for RAM or CPU.

OpenPanel needs a full virtual machine or bare metal, with no other control panel or web server and a public IPv4 address; container-based VPS such as OpenVZ or LXC are not supported. Around the account containers, the server runs Caddy for proxying and certificates, BIND9 for DNS and MySQL for the panel's metadata. The docs give 1 GB of RAM as the minimum, but the sizing page counts 3 GB for one to three accounts without email, plus about 15 MB per idle account. The free edition only installs on Ubuntu 24.04, on x86, on a cloud server or VPS. On 7 October 2026, the install test table in the README showed Debian 12 and Rocky Linux 10 failing.

The access each tool takes on the server

Coolify takes over the servers it manages. Its install script needs root, and validating a server can install Docker and restart its service, so the docs recommend starting from a fresh machine. Connecting with a user other than root is experimental and still requires passwordless sudo.

Openship's API container mounts the host's Docker socket to build and run apps. Its installation page calls that access equivalent to root on the host, and the README says to install it only on a trusted machine.

OpenPanel installs as root, but since version 2.0, released in August 2026, new installs run each account's containers under rootless Podman, with an image store shared by all accounts. Servers installed before 2.0 stay on Docker.

Where the projects stand

Coolify's repository dates from January 2021, but its v4 has only been stable since 27 April 2026, after 474 betas, and its release notes admit there are still many bugs, fixed day by day. The 4.3 line got 23 patch releases between 12 August and 18 September; v4.4.0 shipped on 6 October and v4.4.1 the next day. A v5 has been announced, with no date. Development leans on one account, with 13,031 commits against 1,853 for the next.

Openship is the youngest: repository opened in March 2026, twenty-three releases between 13 July and 6 October, and one developer behind 1,251 of the 1,684 commits on the main branch. Its README describes a "production-ready core" but still lists multi-node clusters as coming next, although v0.8.0 shipped them on 27 September, and it warns that the docs are still being filled out. Desktop users still on 0.8.0 or 0.8.1 have to install v0.8.2 by hand, because the built-in updater in those versions can fail.

OpenPanel's repository has been open since February 2024. Its 2.0 line has fourteen releases, from 2.0.1 on 6 August to 2.0.14 on 5 October, ten of them in September, and one developer authored 10,077 of the 11,300 commits. The free edition gets updates once a month.

Cloud plans, paid editions and licences

Coolify is Apache-2.0 throughout, and its README promises no feature behind a paywall. Coolify Cloud hosts only the dashboard, on Hetzner in Falkenstein, Germany: 5 dollars a month for two servers, then 3 dollars per extra server, billed even when unused. Your apps stay on your own servers, and their OS, firewall and backups remain your job. According to the docs, the cloud has the same features as the self-hosted version, plus email alerts and limited email support. If the subscription is paused, apps keep running but dashboard access is restricted.

Openship is free to self-host: the README says a self-hosted instance has no billing. Openship Cloud sells something different from Coolify Cloud: since v0.8.1 it rents managed servers by the month, from 5 dollars (1 vCPU, 4 GiB of RAM) to 99 dollars (8 vCPU, 32 GiB). The README promises auto-scaling there, and calls the self-hosted version multi-node ready. Openship's own code is Apache-2.0, but the iRedMail engine, licensed GPL v3, is copied into the API Docker image, the CLI package and the desktop app, even if you never set up mail; the provenance of the Zero Email webmail is still under review (issue #610).

OpenPanel's licence file publishes the code for transparency, security review and evaluation, under two licences that restrict commercial use. OpenAdmin and the OpenPanel interface fall under an EULA that allows personal, non-commercial and internal use, production included, and requires an Enterprise licence to sell hosting to third parties, forks included. OpenCLI and the configuration files are CC BY-NC 4.0. Yet the Community edition page calls OpenAdmin "100% open source". That edition, free with no time limit, is capped at 3 accounts, 50 domains and 50 websites. Enterprise costs 14.95 euros a month or 149.50 euros a year, per server, whatever the number of accounts. Only Enterprise unlocks email, FTP, the REST API, reseller accounts, cPanel backup import, billing modules such as WHMCS, Node.js, Python, Ruby and Java apps, MariaDB, PostgreSQL, ARM and operating systems other than Ubuntu 24.04. The 30-day trial needs no credit card; when it ends, OpenAdmin stays locked until the key is removed, and sites keep running. OpenPanel's cPanel comparison page sets this per-server price against cPanel's per-account billing, which it puts at 26 to 60 euros a month.