Skip to main content

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.

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.

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 sudo privileges)
  • The following ports open and reachable from the internet:
PortPurpose
80HTTP traffic (Traefik ingress)
443HTTPS traffic (Traefik ingress)
3000Dokploy 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

1

Install Dokploy

SSH into your server as root (or a sudo user) and run the one-line install script:
curl -sSL https://dokploy.com/install.sh | bash
The script will:
  1. Install Docker Engine if not already present
  2. Initialise a Docker Swarm cluster on the current node
  3. Pull and start the Dokploy container stack (Dokploy app, PostgreSQL, Redis, Traefik)
  4. Write default Traefik configuration to /etc/dokploy/traefik/
  5. Print the dashboard URL when complete
Installation typically takes two to five minutes depending on your server’s download speed.
Don’t want to manage a server yourself? Skip this step and try Dokploy Cloud — the fully managed option.
2

Access the Dashboard

Once the script finishes, open your browser and navigate to:
http://your-server-ip:3000
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.
3

Create a Project

Projects are the top-level organisational unit in Dokploy. Each project can contain multiple applications, databases, and Compose stacks.
  1. From the dashboard home screen, click New Project.
  2. Enter a Project Name (e.g., my-app).
  3. Optionally add a description.
  4. Click Create.
Your new project will appear in the project list, ready for services to be added.
4

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:
  1. Choose a Git provider (GitHub, GitLab, Bitbucket, or Gitea).
  2. Authorise Dokploy to access your account (a one-time OAuth flow).
  3. Select the repository and branch you want to deploy.
  4. Choose a build method: Nixpacks (auto-detected), Railpack, Buildpacks, or Dockerfile.
  5. Click Deploy.
Option B — Deploy a Docker image:
  1. Select Docker Image as the source.
  2. Enter the image name and tag (e.g., nginx:alpine).
  3. Click Deploy.
Dokploy will pull or build the image, create a Docker service in the Swarm, and stream the build logs in real time. A green status badge indicates a successful deployment.
5

Add a Custom Domain

Once your application is running, navigate to its Domains tab.
  1. Click Add Domain.
  2. Enter your domain name (e.g., app.example.com).
  3. Point your domain’s DNS A record to your server’s IP address at your DNS provider.
  4. Select Let’s Encrypt as the certificate type for automatic free SSL.
  5. Click Save.
Traefik will automatically issue and renew the TLS certificate via ACME. Within a minute or two your application will be reachable at 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.

Build docs developers (and LLMs) love