Open Source·

Why I Switched from Coolify to Dokku (And Cut My Costs in Half)

Coolify was great, but...
DISCLAIMER: This blog reflects my personal experience and opinions. I'm not affiliated with Dokku, and the goal of this blog is to share my experience migrating from Coolify.

I used Coolify for quite some time as a self-hosted alternative to platforms like Vercel and Netlify. But after encountering some performance issues and unexpected resource spikes, I decided to switch to Dokku—and I haven’t looked back since.

Context: My Setup

Previously, I ran Coolify on a 16GB RAM / 4-core Hetzner instance. While Coolify's official requirements are much lower, in my experience, this was the minimum for stable performance.

When I switched to Dokku, I was able to downsize to an 8GB RAM / 2-core Hetzner instance—cutting my hosting costs in half without sacrificing performance.

Why I Switched: The Final Straw

While Coolify was powerful, I ran into persistent high CPU usage caused by the coolify-proxy container (which runs Traefik).

Debugging this required manually checking logs and running:

docker stats --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}"

Sentinel was disabled. I enabled it just to check the CPU/memory usage for my apps to make sure it’s not caused by that. Basically, no difference between enabling or disabling Sentinel

So to mitigate the CPU issue, I tried limiting resource usage:

deploy:
  resources:
    limits:
      cpus: '1.0' 
      memory: 512M

While this helped keep CPU usage under control, it broke some of my apps.

At this point, I realized I needed a more stable and lightweight alternative, which led me to Dokku.

Why Dokku?

Dokku is often described as a "self-hosted Heroku," and it lived up to that reputation. Here’s why I made the switch:

1. Lower Resource Usage

Dokku is lighter than Coolify since it doesn’t run an embedded dashboard or extra services by default. With Dokku, I could downsize my server and cut costs without impacting performance.

2. Simple Deployment with Git

Deploying an app with Dokku is as easy as:

git push dokku main

This eliminated the need for Coolify’s UI-based workflows, which sometimes felt overcomplicated.

3. Fewer Moving Parts

Since Dokku is essentially a set of lightweight Docker and Nginx scripts, it avoids the complexity of managing multiple containers like Coolify does.

Things I Miss from Coolify

Dokku is great, but there were a couple of things I missed after switching:

  • Coolify’s One-Click Deploy Feature: Coolify made it easy to spin up new apps quickly via its UI.
  • Built-in Cron Jobs Management: With Dokku, I had to manually configure cron jobs instead of using a UI.

However, the stability and cost savings far outweighed these minor drawbacks.

Final Thoughts

If you’re looking for a self-hosted platform but find Coolify too resource-hungry (or complex), Dokku is a solid alternative.

TL;DR:

  • Pros:
    • Lightweight, lower resource usage, Git-based deployments.
    • Cut my hosting costs in half.
  • Cons:
    • No built-in dashboard.
    • Requires manual setup for some features (like cron jobs).

For my use case (hosting APIs and landing pages), Dokku has been a more efficient and cost-effective choice.

Would I recommend it? Yes—but only if you’re comfortable with CLI-based deployments.


Copyright © 2025. All rights reserved.