Introduction
Dokploy is the new darling of the self-hosting community: a free, open-source deployment platform that replicates what Vercel, Heroku, and Render offer — but on your own server. Create projects, connect a Git repo, and Dokploy handles Docker builds, deployments, databases, domains, and SSL certificates.
With over 33,000 GitHub stars, Dokploy has grown explosively as developers look for ways to escape managed platform pricing. It runs on any Docker-capable Linux box and supports Node, Python, PHP, static sites, Docker containers, and Dockerfiles.
What Dokploy Does
Dokploy provides a web UI to create "applications" (linked to Git), "databases" (MySQL/PostgreSQL/MongoDB/Redis), and "services" (Docker containers). Behind the scenes it uses Docker Swarm for orchestration, Traefik for ingress/SSL, and PostgreSQL for its own state. Each deployment gets SSL via Let's Encrypt automatically.
Architecture Overview
[Web UI + API (Node.js)]
|
[Orchestration: Docker Swarm]
|
+-----+-----+-----+
| | | |
Apps DBs Services Cron
|
[Traefik Reverse Proxy]
Auto-SSL via Let's Encrypt
Per-domain routing
|
[External access]
yourapp.example.com with HTTPS
[Internal state]
PostgreSQL (projects, users, logs)Self-Hosting & Configuration
# Create an app from GitHub
# 1. Go to Projects -> New Project
# 2. Add application -> paste GitHub URL
# 3. Choose build method: Buildpacks / Dockerfile / Docker Compose
# 4. Add domain -> automatic SSL
# 5. Click Deploy
# Environment variables & secrets
# UI has an Env tab for each app, values injected at runtime.
# Database backups (S3-compatible)
# UI -> Database -> Backups -> schedule (cron) + S3 credentials
# Typical docker-compose integration
version: "3.8"
services:
api:
build: .
environment:
DATABASE_URL: ${DATABASE_URL}
ports:
- 3000
deploy:
replicas: 2Key Features
- Git-based deploys — GitHub, GitLab, Bitbucket, Gitea integrations
- Build methods — Nixpacks buildpacks, Dockerfile, Docker Compose, static
- Databases — one-click MySQL, Postgres, MongoDB, Redis, MariaDB
- Automatic SSL — Let's Encrypt via Traefik, zero configuration
- Team management — roles, invitations, audit log
- Backups — scheduled DB backups to any S3-compatible storage
- Rolling deploys — zero-downtime updates for Swarm services
- Monitoring — CPU/memory/logs per container in the UI
Comparison with Similar Tools
| Feature | Dokploy | Coolify | CapRover | Railway | Heroku |
|---|---|---|---|---|---|
| Self-hosted | Yes | Yes | Yes | No (cloud) | No (cloud) |
| Multi-node | Docker Swarm | Swarm/single | Swarm | Managed | Managed |
| Git deploys | Yes | Yes | Yes | Yes | Yes |
| Buildpacks | Nixpacks | Nixpacks/Static | None | Yes | Yes |
| Databases | Yes | Yes | Yes | Yes | Yes (add-ons) |
| Price | Free + license | Free | Free | Paid | Paid |
| Best For | VPS owners wanting Heroku-UX | All-in-one infra | Legacy self-host | Quick managed | Legacy managed |
FAQ
Q: Dokploy vs Coolify — which should I choose? A: Both are excellent. Dokploy is newer, built on Docker Swarm with a cleaner codebase. Coolify has a larger community and more integrations. Try both; most teams pick whichever UI they prefer.
Q: What are the minimum server requirements? A: 2GB RAM and 2 CPUs for a working installation; more for production workloads. Docker must be installed (or use the install script which handles it).
Q: Does Dokploy support multiple servers? A: Yes. Dokploy's recent versions support Docker Swarm mode with multiple nodes, so you can scale horizontally.
Q: Is the license truly free? A: Yes, Dokploy is Apache-2.0 licensed. There is a paid cloud version (hosted Dokploy), but the self-hosted project is fully open source.
Sources
- GitHub: https://github.com/Dokploy/dokploy
- Website: https://dokploy.com
- License: Apache-2.0