Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/dokploy/dokploy/llms.txt

Use this file to discover all available pages before exploring further.

Dokploy can be installed on any Linux server or VPS with Docker support. The installation script handles everything automatically, including Docker installation, Docker Swarm initialization, and Traefik configuration.

Requirements

Before installing Dokploy, ensure your server meets these requirements:
  • Operating System: Linux (Ubuntu, Debian, CentOS, Fedora, or any systemd-based distribution)
  • RAM: Minimum 1GB (2GB+ recommended)
  • CPU: 1 vCPU (2+ recommended for production)
  • Storage: 10GB+ available disk space
  • Network: Open ports 80 (HTTP) and 443 (HTTPS)
  • Root Access: SSH access with sudo/root privileges
Dokploy requires a clean server or VPS. Installing on a server with existing Docker configurations may cause conflicts.

One-Command Installation

SSH into your server and run the automated installation script:
curl -sSL https://dokploy.com/install.sh | sh
The installer will:
  1. Detect your operating system and architecture
  2. Install Docker and Docker Compose if not present
  3. Initialize Docker Swarm for orchestration
  4. Create the dokploy-network overlay network
  5. Deploy Traefik as the reverse proxy
  6. Start the Dokploy control panel
  7. Generate SSL certificates via Let’s Encrypt
The installation typically takes 3-5 minutes depending on your server’s internet connection and resources.

Installation Output

You’ll see output similar to this during installation:
[INFO] Detecting operating system...
[INFO] Installing Docker...
[INFO] Docker installed successfully
[INFO] Initializing Docker Swarm...
[INFO] Swarm initialized
[INFO] Creating dokploy-network...
[INFO] Network created
[INFO] Deploying Traefik...
[INFO] Deploying Dokploy...
[SUCCESS] Dokploy installed successfully!
[INFO] Access your dashboard at: http://your-server-ip:3000

Access Your Dashboard

Once installation completes, access the Dokploy dashboard:
http://your-server-ip:3000
Replace your-server-ip with your server’s actual IP address. For example: http://192.168.1.100:3000

First-Time Setup

When you first access Dokploy, you’ll be prompted to:
1

Create Admin Account

Set up your administrator credentials. Choose a strong password - this account has full access to your Dokploy instance.
  • Email address (used for notifications and Let’s Encrypt)
  • Admin password
  • Confirm password
2

Configure Server Settings

Basic server configuration is applied automatically:
  • Docker Swarm is initialized
  • Traefik is configured for routing
  • SSL certificate generation is enabled
3

Dashboard Ready

You’re now ready to create your first project and deploy applications!

Manual Docker Installation

If you prefer to install Docker manually before running Dokploy:
# Remove old versions
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do 
  sudo apt-get remove $pkg
done

# Install prerequisites
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings

# Add Docker's GPG key
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add Docker repository
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Install Docker Engine
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
After installing Docker, run the Dokploy installation command:
curl -sSL https://dokploy.com/install.sh | sh

Verify Installation

Check that all services are running:
# Check Docker Swarm status
docker node ls

# Check Dokploy services
docker service ls

# Check Traefik is running
docker ps | grep traefik

# Check Dokploy is running  
docker ps | grep dokploy
You should see services like:
  • dokploy - The main control panel
  • traefik - Reverse proxy and load balancer
  • postgres - Database for Dokploy metadata

Ports and Firewall

Ensure these ports are open in your firewall:
  • Port 3000: Dokploy dashboard (HTTP)
  • Port 80: HTTP traffic (Traefik)
  • Port 443: HTTPS traffic (Traefik)
  • Port 2377: Docker Swarm management (if using multi-node)
sudo ufw allow 3000/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Securing the Dashboard

By default, Dokploy runs on port 3000 without HTTPS. For production:
  1. Set up a domain name pointing to your server
  2. Access Dokploy at http://your-server-ip:3000
  3. Navigate to SettingsServer
  4. Configure your domain and enable HTTPS
  5. Dokploy will automatically obtain SSL certificates
Always use HTTPS in production. The initial HTTP setup is only for bootstrapping the installation.

Troubleshooting

Installation fails with Docker errors

Ensure Docker is properly installed and running:
sudo systemctl status docker
sudo systemctl start docker

Cannot access dashboard

Check if Dokploy is running:
docker ps | grep dokploy
View logs if needed:
docker logs $(docker ps -q -f name=dokploy)

Port 3000 already in use

If port 3000 is occupied, stop the conflicting service or configure Dokploy to use a different port.

Updating Dokploy

To update to the latest version:
curl -sSL https://dokploy.com/install.sh | sh
The installer will detect the existing installation and perform an update.
Updates preserve your data, projects, and configurations. Always backup important data before updating.

Next Steps

Now that Dokploy is installed:

Deploy Your First App

Follow our quickstart guide to deploy your first application

Learn Core Concepts

Understand how Dokploy organizes projects, applications, and databases