This guide walks you through installing Dokploy on a fresh VPS, creating your first project, deploying an application from a Git repository or Docker image, and pointing a custom domain at it — all in under ten minutes. By the end you will have a fully functional private PaaS running on your own infrastructure.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Nettalco/dokploy/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
Before you begin, make sure you have:- A VPS or dedicated server running one of the supported operating systems:
- Ubuntu 20.04 or 22.04
- Debian 11 or 12
- Fedora 32+
- CentOS 8+
- At least 2 GB RAM and 30 GB of free disk space
- Root access (or a user with
sudoprivileges) - The following ports open and reachable from the internet:
| Port | Purpose |
|---|---|
80 | HTTP traffic (Traefik ingress) |
443 | HTTPS traffic (Traefik ingress) |
3000 | Dokploy dashboard |
The install script automatically installs Docker Engine if it is not already present. You do not need to install Docker manually before running it.
Installation
Install Dokploy
SSH into your server as root (or a sudo user) and run the one-line install script:The script will:
- Install Docker Engine if not already present
- Initialise a Docker Swarm cluster on the current node
- Pull and start the Dokploy container stack (Dokploy app, PostgreSQL, Redis, Traefik)
- Write default Traefik configuration to
/etc/dokploy/traefik/ - Print the dashboard URL when complete
Access the Dashboard
Once the script finishes, open your browser and navigate to:Replace
your-server-ip with the public IP address of your VPS.You will be greeted by the Setup Wizard, which prompts you to create the initial administrator account. Enter a username, email address, and a strong password, then click Create Account.The dashboard is served over plain HTTP on port 3000 by default. After completing setup you can configure a domain and SSL certificate for the dashboard itself — see Self-Hosting for details.
Create a Project
Projects are the top-level organisational unit in Dokploy. Each project can contain multiple applications, databases, and Compose stacks.
- From the dashboard home screen, click New Project.
- Enter a Project Name (e.g.,
my-app). - Optionally add a description.
- Click Create.
Deploy an Application
Inside your project, click Add Service and then Application to open the application creation form.Option A — Deploy from a Git repository:
- Choose a Git provider (GitHub, GitLab, Bitbucket, or Gitea).
- Authorise Dokploy to access your account (a one-time OAuth flow).
- Select the repository and branch you want to deploy.
- Choose a build method: Nixpacks (auto-detected), Railpack, Buildpacks, or Dockerfile.
- Click Deploy.
- Select Docker Image as the source.
- Enter the image name and tag (e.g.,
nginx:alpine). - Click Deploy.
Add a Custom Domain
Once your application is running, navigate to its Domains tab.
- Click Add Domain.
- Enter your domain name (e.g.,
app.example.com). - Point your domain’s DNS A record to your server’s IP address at your DNS provider.
- Select Let’s Encrypt as the certificate type for automatic free SSL.
- Click Save.
https://app.example.com with a valid certificate.DNS propagation can take anywhere from a few seconds to 48 hours depending on your DNS provider and TTL settings. Let’s Encrypt certificate issuance will succeed as soon as the DNS record resolves correctly.
What’s Next
Now that Dokploy is running and you’ve deployed your first application, explore what else the platform can do:Applications
Learn about build methods, environment variables, and deployment configuration.
Databases
Provision MySQL, PostgreSQL, MongoDB, MariaDB, libsql, or Redis instances and connect them to your applications.
Git Providers
Connect GitHub, GitLab, Bitbucket, or a self-hosted Gitea instance to enable automatic deployments on push.
API Reference
Manage projects, applications, and databases programmatically via the Dokploy API.