My notes about setting up Dokploy, an open source alternative to Heroku, Vercel, and Netlify, on a Linux VPS. It uses Docker under the hood.

VPS Setup

Before installing Dokploy on a VPS, I like to set up Tailscale first. This is because after installation, Dokploy will ask me to set up an admin user via http://<public-ip>:3000, and I prefer not to do that over an unencrypted connection.

# This will install Docker along with Dokploy
curl -sSL https://dokploy.com/install.sh -o install-dokploy.sh
sudo sh install-dokploy.sh

After installing I do this:

  1. Set custom domain. Assuming there is a domain already pointing to the VPS, I go to SettingsWeb ServerDomains and set up the server domain + Let's Encrypt
  2. Set up S3 Destination. This allows Dokploy to upload database and volume backups to an S3-compatible storage. Add that in SettingsS3 Destinations.

Volume Backups

Dokploy supports automatic volume backups. These are my settings:

  • Task Name: <service>-<volname>-backup
  • Backup Prefix: <service>/<volname>-backup
  • Schedule: Daily
  • Keep Latest Backups: 14