Tools: Dokku Has a Free API You've Never Heard Of
What Makes Dokku Special?
The Hidden API: Plugin System
Deployment API
Network and Domain API
Storage and Backup API
Quick Start
Why Startups Choose Dokku Dokku is the smallest PaaS implementation you've ever seen. It's essentially your own Heroku on a $5 VPS. But what most developers miss is Dokku's powerful plugin API and CLI interface that lets you automate entire deployment pipelines. Dokku's plugin API lets you create custom deployment hooks: A startup CTO shared: "We run 12 microservices on a single $20/mo Hetzner VPS with Dokku. Our hosting bill went from $500/mo on Heroku to $20/mo. Same git-push deployment experience." Need deployment automation or scraping tools? Email [email protected] or check my toolkit. Self-hosting your apps? Have you tried Dokku? Templates let you quickly answer FAQs or store snippets for re-use. Hide child comments as well For further actions, you may consider blocking this person and/or reporting abuse
# Install database plugins
dokku plugin:-weight: 500;">install https://github.com/dokku/dokku-postgres.-weight: 500;">git postgres
dokku plugin:-weight: 500;">install https://github.com/dokku/dokku-redis.-weight: 500;">git redis
dokku plugin:-weight: 500;">install https://github.com/dokku/dokku-letsencrypt.-weight: 500;">git letsencrypt # Create and link services
dokku postgres:create mydb
dokku postgres:link mydb myapp
dokku redis:create cache
dokku redis:link cache myapp
# Install database plugins
dokku plugin:-weight: 500;">install https://github.com/dokku/dokku-postgres.-weight: 500;">git postgres
dokku plugin:-weight: 500;">install https://github.com/dokku/dokku-redis.-weight: 500;">git redis
dokku plugin:-weight: 500;">install https://github.com/dokku/dokku-letsencrypt.-weight: 500;">git letsencrypt # Create and link services
dokku postgres:create mydb
dokku postgres:link mydb myapp
dokku redis:create cache
dokku redis:link cache myapp
# Install database plugins
dokku plugin:-weight: 500;">install https://github.com/dokku/dokku-postgres.-weight: 500;">git postgres
dokku plugin:-weight: 500;">install https://github.com/dokku/dokku-redis.-weight: 500;">git redis
dokku plugin:-weight: 500;">install https://github.com/dokku/dokku-letsencrypt.-weight: 500;">git letsencrypt # Create and link services
dokku postgres:create mydb
dokku postgres:link mydb myapp
dokku redis:create cache
dokku redis:link cache myapp
# Create app
dokku apps:create myapp # Configure environment
dokku config:set myapp DATABASE_URL=postgres://...
dokku config:set myapp REDIS_URL=redis://...
dokku config:set myapp NODE_ENV=production # Deploy
-weight: 500;">git remote add dokku dokku@your-server:myapp
-weight: 500;">git push dokku main # Scale
dokku ps:scale myapp web=2 worker=1 # Zero-downtime deploy
dokku checks:-weight: 500;">enable myapp
# Create app
dokku apps:create myapp # Configure environment
dokku config:set myapp DATABASE_URL=postgres://...
dokku config:set myapp REDIS_URL=redis://...
dokku config:set myapp NODE_ENV=production # Deploy
-weight: 500;">git remote add dokku dokku@your-server:myapp
-weight: 500;">git push dokku main # Scale
dokku ps:scale myapp web=2 worker=1 # Zero-downtime deploy
dokku checks:-weight: 500;">enable myapp
# Create app
dokku apps:create myapp # Configure environment
dokku config:set myapp DATABASE_URL=postgres://...
dokku config:set myapp REDIS_URL=redis://...
dokku config:set myapp NODE_ENV=production # Deploy
-weight: 500;">git remote add dokku dokku@your-server:myapp
-weight: 500;">git push dokku main # Scale
dokku ps:scale myapp web=2 worker=1 # Zero-downtime deploy
dokku checks:-weight: 500;">enable myapp
# Custom domains
dokku domains:add myapp api.example.com
dokku domains:add myapp www.example.com # SSL with Let's Encrypt
dokku letsencrypt:-weight: 500;">enable myapp
dokku letsencrypt:cron-job --add # Docker networking
dokku network:create backend
dokku network:set myapp attach-post-deploy backend
# Custom domains
dokku domains:add myapp api.example.com
dokku domains:add myapp www.example.com # SSL with Let's Encrypt
dokku letsencrypt:-weight: 500;">enable myapp
dokku letsencrypt:cron-job --add # Docker networking
dokku network:create backend
dokku network:set myapp attach-post-deploy backend
# Custom domains
dokku domains:add myapp api.example.com
dokku domains:add myapp www.example.com # SSL with Let's Encrypt
dokku letsencrypt:-weight: 500;">enable myapp
dokku letsencrypt:cron-job --add # Docker networking
dokku network:create backend
dokku network:set myapp attach-post-deploy backend
# Persistent storage
dokku storage:mount myapp /var/lib/dokku/data/storage/uploads:/app/uploads # Database backup
dokku postgres:export mydb > backup.sql
dokku postgres:import mydb < backup.sql
# Persistent storage
dokku storage:mount myapp /var/lib/dokku/data/storage/uploads:/app/uploads # Database backup
dokku postgres:export mydb > backup.sql
dokku postgres:import mydb < backup.sql
# Persistent storage
dokku storage:mount myapp /var/lib/dokku/data/storage/uploads:/app/uploads # Database backup
dokku postgres:export mydb > backup.sql
dokku postgres:import mydb < backup.sql
# Install on Ubuntu
-weight: 500;">wget -NP . https://dokku.com/-weight: 500;">install/v0.34.8/bootstrap.sh
-weight: 600;">sudo DOKKU_TAG=v0.34.8 bash bootstrap.sh # Add your SSH key
cat ~/.ssh/id_rsa.pub | dokku ssh-keys:add admin
# Install on Ubuntu
-weight: 500;">wget -NP . https://dokku.com/-weight: 500;">install/v0.34.8/bootstrap.sh
-weight: 600;">sudo DOKKU_TAG=v0.34.8 bash bootstrap.sh # Add your SSH key
cat ~/.ssh/id_rsa.pub | dokku ssh-keys:add admin
# Install on Ubuntu
-weight: 500;">wget -NP . https://dokku.com/-weight: 500;">install/v0.34.8/bootstrap.sh
-weight: 600;">sudo DOKKU_TAG=v0.34.8 bash bootstrap.sh # Add your SSH key
cat ~/.ssh/id_rsa.pub | dokku ssh-keys:add admin - Self-hosted Heroku — -weight: 500;">git push to deploy on your own server
- Buildpacks — supports Heroku buildpacks out of the box
- Plugin system — extend with databases, caching, SSL, and more
- CLI API — fully scriptable deployment automation