TL;DR: Yes, on one server. Dokploy is free on your own servers, runs Docker Compose files as they are, and has 500+ templates, S3 backups, rollbacks and cron. The catch is underneath: running one app across several servers means Docker Swarm, with a registry, an overlay network and manager quorum.
- Pick Dokploy if your apps are in Compose files, you want one-click templates, you need scheduled S3 backups from a dashboard, or you use GitLab, Bitbucket or Gitea.
- Pick Dokploy Cloud ($4.50 a server) if you don't want to keep the dashboard, its Postgres and its Redis alive yourself.
- Pick Coolify if you want a similar dashboard with free team roles, SSO and an audit log; I compare them in Coolify vs Dokploy.
- Pick Ployz if your coding agent runs your servers and you want deletes to wait for you, or you deploy from GitHub and want several servers on one encrypted network without running Swarm or Kubernetes.
- Before you scale out, do what Dokploy's own docs say: make the one server bigger first.
Dokploy is an open-source, self-hosted platform for deploying apps, Docker Compose stacks and databases to your own servers. One command on a Linux server sets up Docker, Docker Swarm, Traefik, Postgres and Redis. It started in April 2024, is written in TypeScript and has about 37,800 GitHub stars.
What would Dokploy cost you?
Self-hosted, you pay only for servers. Dokploy Cloud adds a per-server fee for hosting the dashboard. Two Hetzner servers come to about $14 a month self-hosted and about $23 on Cloud Hobby. With Ployz, one server is on the Free plan with the dashboard hosted for you; past one server it's Pro's price (coming): $19 for up to three servers, then $5 each.
- Hetzner plan
- CX23
- Server bill (incl. IPv4)
- $14.18
- Dokploy, self-hosted$14/mo
Free. The dashboard runs on one of your servers and wants 2 GB of RAM and 30 GB of disk.
- Dokploy Cloud, Hobby$23/mo
$4.50 per server. 1 user, 1 organization, 2 environments. 20% off yearly.
- Dokploy Cloud, Startup$29/mo
From $15 with up to 3 servers, then $4.50 each. Unlimited users, basic roles. 20% off yearly.
- Your own server + Ployz$33/mo
Free plan for one server, dashboard hosted on Ployz Cloud. More servers need Pro (coming): $19 with 3 servers, then $5 each.
Server prices are Hetzner's cloud line after its 15 June 2026 price adjustment, before VAT, plus about $0.60 for IPv4:
| Server | vCPU / RAM | Monthly | Regions |
|---|---|---|---|
| Hetzner CX23 | 2 / 4 GB | $6.49 | Germany, Finland |
| Hetzner CX33 | 4 / 8 GB | $9.99 | Germany, Finland |
| Hetzner CX43 | 8 / 16 GB | $18.49 | Germany, Finland |
| Netcup VPS 500 (Netcup) | 2 / 4 GB, 64 GB | about €9.26 incl. VAT in Manassas (US), 12-month term | Europe or US |
More on Hetzner's lineup in Hetzner pricing.
How much does Dokploy cost?
Self-hosted Dokploy is free, with no feature limits on the core product. Dokploy Cloud hosts only the control plane, and your apps still run on your servers. Yearly billing takes 20% off.
| Plan | Price | What you get | Source |
|---|---|---|---|
| Self-hosted | $0 | Everything in the Apache-2.0 core | License |
| Cloud Hobby | $4.50/month per server | 1 user, 1 organization, 2 environments, basic backups, Discord support | Pricing |
| Cloud Startup | From $15/month, 3 servers; $4.50 per extra server | Unlimited users and environments, 3 organizations, Admin/Developer roles, 2FA, email and chat support | Pricing |
| Enterprise | Contact sales | SSO/SAML, SCIM, audit logs, fine-grained roles, white-labeling; cloud or self-hosted | Pricing |
In Dokploy's words, on Cloud "the control plane (UI, database, and management layer) is hosted by us", and "your code and data never leave your servers" (Dokploy Cloud docs). There's a 7-day free trial with no card. The server bill is the same on every plan; Cloud buys you not running the dashboard yourself, plus the full monitoring page.
What does Dokploy do well?
On features, Dokploy is the widest of the self-hosted dashboards I've looked at.
| Dokploy | Ployz | |
|---|---|---|
| Price on your own servers | Free | Free plan for one server, unlimited projects and members |
| Hosted dashboard | Dokploy Cloud, $4.50/server or from $15 | Ployz Cloud, included on the Free plan; more servers on Pro (coming) |
| Coding agent access | Official MCP server, 604 tools | ployz mcp, 55 tools; deletes wait for you |
| Builds | Dockerfile, Nixpacks, Heroku and Paketo buildpacks, Railpack | Railpack (no Dockerfile needed), your Dockerfile, any image |
| Git providers | GitHub, GitLab, Bitbucket, Gitea, any Git URL | GitHub only |
| Docker Compose | Yes, plus Swarm stack mode | No |
| One-click templates | 569 in the templates repo | One-click databases; anything else from its Docker image |
| Databases | Postgres, MySQL, MariaDB, MongoDB, Redis, libsql | Postgres, MySQL, MongoDB, Redis |
| Backups | To S3: databases, named volumes, Dokploy itself | A restore point for every database; restore it or move a database in a click |
| Preview environments | GitHub only, off by default | Every pull request, GitHub only |
| Multi-server | Remote servers over SSH, or a Docker Swarm cluster | Servers join an encrypted WireGuard network |
| Self-hosted dashboard | Yes, with nothing outside your server | Yes, with Docker Compose; it uses Ployz's relay and DNS |
| Proxy | Traefik, on the main server and each remote | Caddy, on every server |
| Monitoring | Basic stats; full monitoring is Cloud-only | Metrics for every service and server, searchable logs and uptime checks |
| License | Apache-2.0, enterprise code source-available | CLI and server software Apache-2.0, dashboard AGPL-3.0 |
The install is curl -sSL https://dokploy.com/install.sh | sh on Ubuntu, Debian, Fedora or CentOS, with ports 80, 443 and 3000 free (installation docs).
Docker Compose
Dokploy runs Compose files as they are, which is its biggest practical advantage over most dashboards. You pick plain Docker Compose or Swarm "stack" mode. Domains are set in the UI and Traefik routes them. The gotchas, from the Compose docs:
- In stack mode, "some Docker Compose features, such as
build, are not available." - Each deploy does a fresh
git clone, which "clears the repository directory", so files mounted straight from the repo disappear. Use its../filesfolder or named volumes. - "Volume Backups only work with Docker named volumes, not with bind mounts."
- UI environment variables are "not automatically injected into containers." You reference them in the Compose file.
- Separate build servers work for Applications only, not Compose (remote servers docs).
Backups, rollbacks and cron
- Databases: scheduled backups to any S3-compatible bucket, with a Test button to check the bucket first (database backups).
- Volumes: named volumes to S3 on a cron schedule. The "safer option" stops the container during the backup; leaving it running "may cause inconsistencies" (volume backups).
- Dokploy itself: its
dokploy-postgresdatabase and/etc/dokploy, compressed and sent to S3. A restore drops and replaces both (backups). - Rollbacks: Swarm rolls back when a new version fails its health check, and with a registry you can roll back to any earlier deploy (rollbacks).
- Cron: schedule jobs run commands in apps, Compose services or on servers (schedule jobs).
Monitoring
The self-hosted dashboard shows real-time CPU, memory, storage and network per resource (README). The configurable monitoring page, with a 20-second refresh, 2 days of retention and CPU and memory alert thresholds, is Cloud-only: "This is feature only available on Cloud Version of Dokploy" (monitoring).
Where does Docker Swarm bite?
Dokploy has two multi-server features, and only one spreads an app across servers.
Remote servers let one dashboard deploy to other machines over SSH. Each remote gets its own Traefik and runs its own apps, and you can add a build server that pushes images to a registry for the deploy servers to pull (remote servers docs). Monitoring isn't supported on remotes "due to performance reasons." Each remote "runs its own standalone Docker and its own Traefik instance — they don't form a cluster and don't know about each other", and Dokploy suggests them for "separating apps per environment, region, or customer" (deployment options).
Clusters turn your servers into a Docker Swarm so one service can run replicas across nodes. From the cluster docs:
- You need the Dokploy server as manager, "at least one extra server with the same architecture as the dokploy server", and a Docker registry.
- Dokploy recommends "using vertical scaling" first, a bigger server, "since it's faster and requires less additional configuration."
- "Dokploy does not perform automatic cleanup of storage for workers or other associated nodes that are not the Dokploy server."
Then come Swarm's own rules, from Docker's docs:
- Ports: nodes need 2377/tcp, 7946/tcp+udp and 4789/udp open to each other (overlay networks). Without a private network, that means firewall rules on public IPs.
- Encryption: overlay networks aren't encrypted by default.
--opt encryptedadds IPsec "at the level of the Virtual Extensible LAN (VXLAN)", with "a non-negligible performance penalty" Docker tells you to test. - Quorum: "Raft requires a majority of managers." Lose quorum and "new or existing tasks cannot be started, stopped, moved, or updated", though running tasks keep running (Swarm admin guide).
- Volumes stay on the node that created them.
Swarm isn't dead. Docker separates Swarm mode from "Docker Classic Swarm which is no longer actively developed" (Swarm mode), and Mirantis promised in July 2025 that "Swarm will be fully supported through at least 2030" (Mirantis). I think most new orchestration work goes to Kubernetes, though, so fewer people can help when Swarm misbehaves.
Dokploy hides most of the setup, but when a cluster breaks, you debug Swarm. One user reported in July 2025 a single-node Swarm where builds finished but the service kept running the old image, failing with "host-mode port already in use", until a manual docker service update --force after every deploy. The issue is closed, but it's the kind of failure you only understand if you know Swarm.
Zero-downtime deploys go through Swarm too. They work once you add a health check endpoint and paste a health check JSON into the app's Swarm settings (zero downtime docs). Without that, a redeploy can give you Bad Gateway errors while the container swaps.
What do people complain about?
Disk space, thin docs and security bugs that took a while to fix. Dokploy shipped 40 releases between January and September 2026, about one a week, and had 566 open issues on 15 October 2026. Most users I read like it a lot.
- Disk fills up. Dokploy's troubleshooting page warns that with no free space, "the Dokploy database might enter recovery mode, preventing access to the user interface." One user watched disk go from 15 GB to 25+ GB across about 50 deploys, and fixed it by switching from Railpack to Nixpacks and setting Docker log rotation. Turn on the daily Docker cleanup and log rotation on day one.
- Docs and support. In a 98-point HN thread that mostly praised it ("the polish on Dokploy is insane"), one user wrote: "I've had to consult its source code because of its lack of documentation in a few instances. Support, even for paying customers, is lacking."
- Security. Preview deployments built any pull request and exposed environment variables; it was reported in December 2024 and fixed in v0.24.3 in July 2025. A hardcoded Postgres password in the install script was reported in January 2026 and fixed. The docs still say not to use preview deployments on public repos, since "external people can execute builds and deployments in your server" (preview docs).
- The dashboard shares the box. Self-hosted on one server, Dokploy's UI, Postgres, Redis and Traefik run next to your apps and builds. The docs ask for 2 GB of RAM and 30 GB of disk to "prevent system freezes during Docker builds" (installation docs).
For balance: the security bugs were fixed, and the release pace means bugs get attention.
Is Dokploy good for hosting apps for clients?
Yes, with a server per client, though the hosted plans cap organizations. Dokploy groups work into organizations and projects, and calls a project "a workspace for a specific product, client, or initiative" (multi-tenancy). On Dokploy Cloud, Hobby has one organization and one user, Startup three organizations, and Enterprise ten or more.
- A server per client: remote servers run each client's apps on a server you choose, independent of the others, so a client with a data-location rule can get a server in the right region, even one the client rents (deployment options).
- Previews: GitHub only and capped at 3 per app by default, which runs out quickly when several clients each want a link (previews).
- Agency plan: sold through Dokploy's partner team, priced on request (pricing).
I compare this with Coolify's teams in Coolify vs Dokploy.
Is Dokploy open source?
Yes, mostly. Since 21 January 2026 the core is standard Apache-2.0. Anything in a /proprietary folder is under the Dokploy Source Available License and needs a paid agreement in production; today that's SSO, SCIM, custom roles, audit logs, white-labeling and license keys.
Older reviews describe a different license. In October 2024 Dokploy added terms saying its multi-node, Compose and multi-server features "cannot be sold or offered as a service" by anyone else, and in 2025 preview deployments and schedules joined that list. In January 2026 Dokploy replaced all of that with open core. Its post says no existing feature moved behind the paid license, and that future paid features include SSO, branding, "High availability, auto-scaling, and disaster recovery" and advanced monitoring. I think that's clearer than before, but it means high availability, if it comes, will be paid.
Which should you pick?
| If you need… | Pick |
|---|---|
| Compose files, templates and S3 backups on one server | Dokploy or Coolify |
| GitLab, Bitbucket or Gitea | Dokploy or Coolify |
| Swarm replicas across nodes from a UI | Dokploy |
| Free team roles, SSO and an audit log | Coolify |
| Several servers on one private network, no Swarm or Kubernetes, from GitHub | Ployz |
| A coding agent that runs your servers, with deletes that wait for you | Ployz |
| Metrics, logs and uptime checks without a paid plan | Ployz |
Coolify on its own is in my Coolify review, the wider field in Coolify alternatives, and hosted platform prices in PaaS pricing.
Where Ployz fits
Ployz is the one I build. It's built for coding agents on your own servers: give Claude Code, Codex or Cursor one prompt, Read ployz.dev/agents.md and deploy this repo to my server., and the agent deploys, reads logs and fixes what broke through ployz mcp. Deleting a service, a volume or a domain waits for you.
It's also aimed at the part where Dokploy hands you Swarm. When you add a server, it joins an encrypted WireGuard network, and services on different servers reach each other at NAME.internal. There's no registry, manager quorum or overlay port list, and every server runs its own Caddy, so there's no load balancer to rent.
ployz up --server root@your-server
That installs Ployz on a Linux server with systemd, builds the current directory and gives it an HTTPS address.
- Zero-downtime deploys without Swarm JSON: set a health check path, and the new version must pass it before the old one stops.
- Preview environments for every pull request, on your servers. Save a preview's settings and they go live with the merge.
- Staging that saves back: branch production into
staging, change it, then save the changes back to production. - Builds without a registry, on your servers or in your own GitHub Actions. Node, Python, Ruby, PHP, Go, Rust, Java and Elixir need no Dockerfile.
- Staged edits: dashboard changes are reviewed before they deploy.
- Monitoring and searchable logs for every service, and uptime checks on your public services, included.
- A restore point for every database: restore it, or move the database to another server with seconds of downtime.
- An AI agent in the dashboard that answers questions about your projects, and for your own coding agent,
--jsonon every command and a one-prompt setup so Claude Code can deploy.
If you host apps for clients, each client's app gets its own database and every pull request gets a preview link.
If your app is a Compose file, Dokploy is the better pick.
Ployz's Free plan covers one server, with unlimited projects and members, custom domains, and the dashboard hosted on Ployz Cloud, so you don't keep one alive on your own server. Connect your agent and deploy on your own server.
FAQ
Is Dokploy free?
Yes. Self-hosted Dokploy is free under Apache-2.0 for the core product. Paid plans host the dashboard for you (from $4.50 a server) or add enterprise features like SSO and audit logs. Ployz's Free plan covers one server and hosts its dashboard for you.
Does Dokploy need Docker Swarm?
Dokploy installs Swarm on every setup, and its zero-downtime deploys use Swarm health checks. You need a multi-node Swarm, with a registry, only to spread one app across servers.
How much RAM does Dokploy need?
2 GB of RAM and 30 GB of disk, according to its install docs. The dashboard, Postgres, Redis and Traefik share the server with your apps and builds, so 4 GB is more comfortable.
Is Dokploy safe for public repos?
Turn preview deployments off on public repos. Dokploy's docs warn that "external people can execute builds and deployments in your server" through them.
Dokploy or Coolify?
They cover similar ground: Compose, templates, S3 backups and previews. Dokploy has Swarm clusters; Coolify has free team roles, SSO, an audit log and previews on more Git providers. The details are in Coolify vs Dokploy.
Can Dokploy be self-hosted?
Yes, and that's the free version. One command installs Dokploy with its Postgres, Redis and Traefik on your own Linux server, and nothing outside it is needed. Dokploy Cloud is the paid option that hosts only the dashboard; your apps still run on your servers.
How do I install Dokploy on Ubuntu?
Run curl -sSL https://dokploy.com/install.sh | sh on a server with ports 80, 443 and 3000 free, then open http://your-server-ip:3000 to create the admin account. Dokploy lists Ubuntu 18.04 to 24.04, Debian 10 to 12, Fedora 40 and CentOS 8 and 9 as tested (installation docs).
What are the alternatives to Dokploy?
Coolify is the closest, with the same shape and previews from more Git hosts. Dokku, CapRover, Kamal and Ployz suit other needs; they're compared in Coolify and Dokploy alternatives and self-hosted PaaS.
Can Claude Code deploy to Dokploy?
Yes, through Dokploy's API or its MCP server, which loads 604 tools by default, 52 of them marked destructive. With Ployz, ployz mcp gives the agent 55 tools, and deleting a service, a volume or a domain waits for you. I compare the setups in deploy with Claude Code.
How I checked
I checked every fact on 2026-10-01, and again on 2026-10-15, against Dokploy's docs, its GitHub repo, Docker's own docs and public user reports, linked next to each claim. I haven't run Dokploy myself for this review; where I describe how it behaves, I'm quoting its docs or users who have. I build Ployz, which competes with it, so weigh my verdict on Ployz accordingly.
Let your coding agent run your own server with Ployz's Free plan: get started.