DEV Community

Alex Spinov
Alex Spinov

Posted on

Dokku Has a Free Self-Hosting Platform That Replaces Heroku

Dokku is a free, open-source Platform-as-a-Service (PaaS) that you can run on your own server. Think of it as your personal Heroku — but completely free and under your control.

What Is Dokku?

Dokku is the smallest PaaS implementation you'll ever see. It's powered by Docker and lets you deploy applications with a simple git push — just like Heroku, but on YOUR infrastructure.

Key features:

  • Git-based deployments (git push dokku main)
  • Automatic SSL via Let's Encrypt
  • Built-in Nginx reverse proxy
  • Plugin ecosystem (PostgreSQL, Redis, MongoDB, etc.)
  • Buildpack AND Dockerfile support
  • Zero-downtime deploys
  • Multi-app support on a single server

Quick Start

Install Dokku on any Ubuntu server (even a $5/month VPS):

wget -NP . https://dokku.com/install/v0.34.8/bootstrap.sh
sudo DOKKU_TAG=v0.34.8 bash bootstrap.sh
Enter fullscreen mode Exit fullscreen mode

Create an app and deploy:

# On your server
dokku apps:create my-app

# On your local machine
git remote add dokku dokku@your-server:my-app
git push dokku main
Enter fullscreen mode Exit fullscreen mode

That's it. Your app is live.

Add a Database in 30 Seconds

# Install PostgreSQL plugin
sudo dokku plugin:install https://github.com/dokku/dokku-postgres.git

# Create database and link to app
dokku postgres:create mydb
dokku postgres:link mydb my-app
Enter fullscreen mode Exit fullscreen mode

Dokku automatically injects the DATABASE_URL environment variable. No configuration files needed.

Free SSL Certificates

dokku letsencrypt:enable my-app
Enter fullscreen mode Exit fullscreen mode

Automatic HTTPS with auto-renewal. Free forever.

Why Dokku Instead of Heroku?

Feature Heroku Free Dokku
Cost $5-25/mo per dyno $0 (your server)
Sleep after 30 min Yes No
Custom domains Paid Free
SSL Paid on some plans Free (Let's Encrypt)
Database 10K rows free Unlimited
Deploy limit 1 app free Unlimited apps
Full control No Yes

Real Cost Comparison

A typical Heroku setup (web dyno + database + SSL) costs $25-50/month.

With Dokku on a $5/month DigitalOcean droplet, you get:

  • Unlimited apps
  • Unlimited databases
  • Free SSL
  • No sleep timeouts
  • Full server access

That's saving $240-540/year per project.

Deploy Any Stack

Dokku supports everything:

  • Node.js: Auto-detected via package.json
  • Python: Auto-detected via requirements.txt
  • Ruby: Auto-detected via Gemfile
  • Go, Java, PHP: Buildpack auto-detection
  • Docker: Just add a Dockerfile

Scaling

# Scale web workers
dokku ps:scale my-app web=4 worker=2

# Check running processes
dokku ps:report my-app
Enter fullscreen mode Exit fullscreen mode

Environment Variables

dokku config:set my-app SECRET_KEY=abc123 DEBUG=false
Enter fullscreen mode Exit fullscreen mode

Changes trigger automatic redeploy.

Who Uses Dokku?

  • Solo developers replacing Heroku
  • Startups saving on infrastructure
  • Agencies managing multiple client apps
  • Teams wanting full control over deployments

With 26K+ GitHub stars and an active community, Dokku is battle-tested and production-ready.

Get Started

  1. Get a $5/month VPS (DigitalOcean, Hetzner, Vultr)
  2. Install Dokku (one command)
  3. Push your code
  4. Your app is live with SSL

The entire setup takes under 10 minutes. After that, every deployment is just git push.


Building data-intensive apps? Check out my web scraping tools on Apify — get structured data from any website in minutes. Need a custom solution? Email spinov001@gmail.com

Top comments (0)