Dokploy is an open-source, self-hosted PaaS built specifically for Docker container management. On RepoCloud, Dokploy runs on a dedicated VPS with full root access, SSH, a browser console, and all the management tools in the RepoCloud dashboard.
Docker-Native
Purpose-built for Docker — deploy from Git repos, Docker images, or Docker Compose files with a unified interface
Auto-Detect Builds
Nixpacks auto-detects your language and dependencies, or use Heroku Buildpacks, Paketo, or a custom Dockerfile
Go to the RepoCloud marketplace and search for “Dokploy”. Click on the Dokploy VPS listing.
2
Enter a Project Name
Choose a friendly name for your project (e.g., “my-dokploy”). This is for your reference in the RepoCloud dashboard.
3
Enter Your Admin Email
Provide the email address you want to use for the Dokploy admin account. It defaults to your RepoCloud account email.
4
Choose Resource Settings
Select a tier for your server. Tiers below 2 GB RAM are greyed out because Dokploy requires at least 2 GB for container orchestration initialization. Servers can be upgraded to a higher tier but not downsized.
5
Deploy
A dedicated IPv4 address is included with every VPS at no extra charge. Click Deploy Dokploy and wait 5–10 minutes.
6
Check Your Email
Once deployment finishes, you receive an email with:
Dashboard URL — the HTTPS link to your Dokploy dashboard
App Credentials — admin email and generated password
SSH command — ssh root@<your-ip>
SSH Private Key — save it to a file, chmod 600, and use it to connect
Dokploy requires a minimum of 2 GB RAM. Deploying on 1 GB causes out-of-memory errors during container orchestration initialization.
Open the dashboard URL from your deployment email. Dokploy serves its web interface on port 3000, proxied through the VPS’s default HTTPS domain.
2
Create Your Admin Account
On first visit, register with your name, email, and a secure password. The first account created becomes the Dokploy administrator.
3
Configure Your Domain (Optional)
For production use, go to Settings in the sidebar and set a domain for the Dokploy dashboard itself. Create a DNS A record pointing to your VPS IPv4, then enter the domain in Dokploy. It configures Traefik to serve the dashboard over HTTPS and you can close direct port 3000 access.
After setup, consider restricting port 3000 to your IP address via ufw. All traffic should go through the Traefik HTTPS endpoint (port 443) once a domain is configured.
Dokploy provisions databases as dedicated services:
1
Create a Database Service
Inside a project, click Create Service and select Database. Choose from PostgreSQL, MySQL, MariaDB, MongoDB, or Redis.
2
Configure
Set the database name, credentials, and any custom configuration. Dokploy pulls the official image and starts the container.
3
Connect Your App
Use the connection string shown in the database service details. For apps in the same Dokploy project, use the Docker internal hostname (e.g., db-service:5432).
Dokploy manages domains and SSL through its built-in Traefik reverse proxy:For applications deployed inside Dokploy:
Open the application in the Dokploy dashboard
Go to the Domains tab
Click Add Domain and enter your domain (e.g., app.yourdomain.com)
Enable HTTPS
Create a DNS A record pointing to your VPS IPv4 address
Dokploy configures Traefik and provisions a Let’s Encrypt certificate automatically
Traefik handles certificate renewal (30 days before expiry). If a certificate fails to issue, check that port 80 is open and DNS has propagated.
Use Dokploy’s own domain management for applications running inside it. The RepoCloud “Custom Domain” in the manage page is for the VPS itself, not for individual apps inside Dokploy.
Your Dokploy VPS has a dedicated manage page in the RepoCloud dashboard with these sections:
Access
View your server’s default domain (HTTPS link to Dokploy dashboard), dedicated IPv4 address, SSH connection command, and app credentials.
Power
Power Off, Power On, and Reboot controls. Available once deployment is complete.
Console
Browser-based serial console for emergency access without SSH.
SSH Keys
Manage SSH public keys for root access. An Ed25519 key pair is auto-generated at deployment.
Resize
Switch between tiers. Disk cannot be shrunk after an upgrade.
Snapshots
Create up to 5 point-in-time snapshots. Take one before risky changes. To restore, click Restore next to the target snapshot. If newer snapshots exist, a warning lists which ones will be permanently destroyed. The server restarts during restore (~10–25 seconds) and the page refreshes automatically when complete.
Custom Domain (VPS-level)
Point your own domain to the VPS by creating an A record to your IPv4.
Dokploy’s dashboard runs on port 3000 behind the VPS’s default HTTPS domain. If the URL does not load, wait a few more minutes for all containers to start. If it remains unreachable after 15 minutes, use the browser console from the RepoCloud manage page and run docker service ls to check service status.
Out of memory during initialization
Dokploy requires at least 2 GB RAM. On 1 GB servers, the orchestration initialization fails and SSH may become unresponsive. Resize to 2 GB or larger from the RepoCloud manage page.
Build fails with Nixpacks
Check the build log in the Deployments tab. Common causes: unsupported runtime version, missing package.json or requirements.txt, or incorrect build command. Switch the build type to Dockerfile if Nixpacks cannot detect your project correctly.
SSL certificate not provisioning
Verify your DNS A record points to the correct IPv4 (check the manage page Access section). Let’s Encrypt uses port 80 for the HTTP-01 challenge — ensure it is not blocked. Check the Traefik logs under Settings > Traefik in the Dokploy dashboard.
Cannot SSH into the server
Ensure your key file has chmod 600 permissions and you are connecting as root. If SSH is unresponsive, use the browser console from the RepoCloud manage page and check systemctl status sshd.