// Migration Guide · 2026

Migrate from Dokku to Runsite

Dokku gives you Heroku-style deploys on your own server — but you own the server, the upgrades and the backups. Runsite runs the same buildpack and Procfile workflow fully managed in Frankfurt.

{ }
Procfile
on Dokku
git push → build
EU
live stack
Frankfurt · eu-central
~10 min
typical migration
No server to babysit
keep your workflow
Keep Dokku running
until you cut over
Zero Server Management
99.9% Uptime SLA
Frankfurt EU Data Center
Free Tier — Forever

// the mental model

Every Dokku concept has a Runsite home

Dokku uses buildpacks or a Dockerfile and a Procfile, just like Heroku. Every piece maps onto a managed Runsite resource — without you running the host.

Procfile
web: gunicorn app:app
worker: celery -A app worker
release: python manage.py migrate
  • git push dokku main
    dokku
    git push → auto-build auto
    Buildpacks and Dockerfile both detected automatically
  • Procfile web process
    dokku
    Web service start command auto
    Your web: line becomes the start command, unchanged
  • Procfile worker process
    dokku
    Background worker you do
    Recreate the worker process explicitly for now
  • postgres plugin
    dokku
    Managed PostgreSQL you do
    Provision in Frankfurt; dump and restore your data
  • redis plugin
    dokku
    Managed Redis you do
    Spin one up; point REDIS_URL at it
  • config:set vars
    dokku
    Environment variables you do
    Paste config once; encrypted at rest

// step by step

From Dokku to live in the EU

Six steps. Most of them take seconds. Dokku keeps serving traffic until you flip your DNS.

  1. 1

    Create a Runsite project

    ~30 sec

    Sign in at runsite.app and create an empty project. No credit card, no sales call.

  2. 2

    Connect your Git repo

    GitHub · GitLab · Bitbucket

    Authorize GitHub, GitLab or Bitbucket. Runsite scans the selected branch for your Procfile and detects the stack automatically.

  3. 3

    Review the detected setup

    Full preview before provisioning

    Runsite lists every service, database and env var it found and how each maps onto a Runsite resource. Tweak build or start commands inline. Nothing is created yet.

  4. 4

    Provision in Frankfurt

    One click · eu-central

    Create the whole stack in one step. Cross-resource env vars are wired up for you, and you get fresh database and Redis credentials in the EU.

  5. 5

    Drop in your secrets

    Secrets stay out of Git

    Secret values are never read from your repo. Paste API keys and tokens once in the dashboard; they're encrypted at rest and never logged.

  6. 6

    Push to go live

    Live in < 2 min

    git push and your app builds and deploys in the EU in under two minutes. Point your custom domain when ready. Dokku keeps running until you cut over.

// no surprises

What moves on its own — and what you touch

Honest about the boundaries. The supported stack is recreated in one click; a short list needs a human, and Runsite flags every item.

Imported automatically

  • Buildpack and Dockerfile builds
  • Procfile web process as the start command
  • Auto-deploy on git push
  • Health checks

You handle once

  • Worker / release processes — recreate explicitly
  • Postgres plugin data — dump and restore into managed PostgreSQL
  • Redis plugin — recreate as managed Redis
  • config:set variables — paste once after import

// dokku problems → runsite solutions

Common Dokku frustrations — sound familiar?

Every Dokku frustration, solved.

Dokku problem

"My Dokku server rebooted and everything went down"

Dokku is single-node. One VPS failure takes all your apps, databases, and SSL certificates offline.

Runsite solution

Managed multi-node infrastructure

Your apps run on redundant infrastructure with auto-failover. No single machine can take everything down.

Dokku problem

"I spend weekends patching the OS"

Self-hosting means you're responsible for security patches, kernel updates, and disk space monitoring.

Runsite solution

Fully managed — we handle the ops

Push code, get a URL. OS updates, security patches, and monitoring are our problem, not yours.

Dokku problem

"Database backups? I forgot to set those up"

Dokku databases are plugins running on the same host. Backups require manual cron setup.

Runsite solution

Auto-backups on managed PostgreSQL

Automated daily backups with point-in-time recovery. Your data is safe without any setup on your part.

// comparison

Runsite vs Dokku

Side-by-side. No marketing fluff — just facts.

Feature Runsite Dokku
Infrastructure Fully managed, multi-node Single VPS, you manage
High Availability Multi-node, auto-failover Single node = single point of failure
Managed PostgreSQL From €5/mo, auto-backups Runs on same host, manual backups
SSL Certificates Automatic Via plugin (dokku-letsencrypt)
Spending Limits Hard cap + Telegram alerts VPS bill can spike
Deploy from Git (Buildpacks)
Docker Support
Total Cost (small app) €5/mo $5-10/mo VPS + your time

Migrating from Dokku, answered

Do I still run a server with Runsite?

No. Dokku runs on a host you provision, secure and upgrade yourself. Runsite is fully managed — no SSH, no plugin upkeep and no OS patching.

Does my Procfile still work?

Yes. Runsite reads your Procfile and turns the web: process into the start command, exactly as Dokku and Heroku do. Worker and release processes are flagged so you can recreate them.

How do I move Dokku Postgres data?

Runsite provisions a managed PostgreSQL in Frankfurt. Use the Dokku postgres plugin's export, then pg_restore into Runsite; the new connection string is auto-wired into DATABASE_URL.

Is migrating from Dokku risky?

No. Your Dokku app keeps running while you verify on Runsite, then you cut over with DNS. You also remove the risk of a self-hosted host failing.

Why migrate from Dokku to Runsite?

You keep the buildpack and git-push workflow but drop self-hosting, gaining an EU Frankfurt region for GDPR, predictable EUR pricing with hard spending caps and a permanent free tier.

Leave Dokku behind

Bring your Procfile. We'll handle the rest — in Frankfurt.

Start your migration →
No rewrites Zero downtime Deploy in 2 min EU servers