Stars
Forks
Watchers
Developer links
Dokku
With over 32,000 GitHub stars and a decade of production use since 2013, Dokku is the original self-hosted Heroku alternative — a Docker-powered PaaS that turns any single Ubuntu server into a full application platform with a simple git push. Deploy applications written in Node.js, Python, Ruby, Go, Java, PHP, Scala, and Clojure using Heroku-compatible buildpacks, Cloud Native Buildpacks via pack-cli, standard Dockerfiles, or pre-built Docker images, with automatic language and framework detection handling the rest. Every deployment runs through zero-downtime checks that health-test new containers before routing traffic via the built-in Nginx reverse proxy, which handles virtual host configuration, WebSocket proxying, and HTTP/2 support automatically. The official plugin ecosystem provides managed datastores including PostgreSQL, MySQL, MariaDB, MongoDB, Redis, RabbitMQ, and Elasticsearch, each provisioned with a single CLI command and linked to apps via environment variables. Automated TLS certificates arrive through the Let's Encrypt plugin with auto-renewal, while persistent storage volumes, cron job scheduling, user ACL management, and process scaling round out the platform capabilities. The entire system is CLI-driven — no web dashboard — keeping resource overhead minimal enough to run multiple applications on a $5/month VPS. Dokku also supports Lambda function builds, custom builder plugins, and app.json-based healthcheck configuration for advanced deployment workflows. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.
Benefits
- Heroku Workflow Without Heroku Costs
- Deploy applications with git push using Heroku-compatible buildpacks and automatic language detection, eliminating per-dyno pricing while maintaining the same developer workflow on your own infrastructure.
- Zero-Downtime Container Deployments
- Health-check new Docker containers before routing traffic through Nginx reverse proxy, ensuring applications remain available during every deployment with configurable wait times and custom healthcheck endpoints.
- Managed Datastores via Plugins
- Provision PostgreSQL, MySQL, MongoDB, Redis, RabbitMQ, and Elasticsearch databases with single CLI commands, automatically linking connection strings to applications through secure environment variables.
- Minimal Resource Overhead
- Run multiple production applications on a single server with Docker container isolation, Nginx-based routing, and CLI-only operation requiring no web dashboard or additional infrastructure beyond the host.
Features
- Git Push Deployment
- Push code via git remote and Dokku automatically detects the language, builds a Docker container using Heroku buildpacks, Cloud Native Buildpacks, or Dockerfiles, and deploys with zero downtime.
- Plugin Ecosystem
- Install official plugins for PostgreSQL, MySQL, Redis, MongoDB, Let's Encrypt SSL, and cron scheduling, plus dozens of community plugins for additional datastores and integrations.
- Automatic SSL Certificates
- The Let's Encrypt plugin provisions and auto-renews TLS certificates for all deployed applications, with Nginx handling HTTPS termination and HTTP/2 support automatically.
- Process Management
- Scale web and worker processes independently, configure persistent storage volumes for stateful applications, and manage environment variables across deployment environments via CLI.
- Multiple Builder Support
- Choose between Herokuish buildpacks, Cloud Native Buildpacks via pack-cli, Dockerfiles, pre-built Docker images, or even AWS Lambda function builders depending on application requirements.