{
  "id": 18453053,
  "title": "How to Install n8n on a VPS (Docker + Free HTTPS)",
  "url": "https://urgent.news/2026/11/06/how-to-install-n8n-on-a-vps-docker-free-https",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-11-06T06:20:02.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/volyte/how-to-install-n8n-on-a-vps-docker-free-https-3jeb"
  },
  "original_language": "en",
  "account": "n8n is a workflow automation tool that you can run on your own server, providing unlimited workflow executions without paying per run and keeping your data secure on a machine you control. This guide explains how to set up n8n on a Linux VPS using Docker and Caddy, a web server that automatically obtains a free HTTPS certificate. The process takes around 15 minutes.\n\nRequirements include a Linux VPS running Ubuntu 24.04 or Debian 12, at least 2 GB of RAM (4 GB or more recommended for business workflows), a subdomain pointing to your server's IP, and a secured server with updated security measures. Replace 'n8n.example.com' in the commands with your own subdomain.\n\n1. Install Docker using the official install script, add it to your user group, and verify the installation with 'docker --version' and 'docker compose version'.\n2. Confirm the subdomain points to your server by executing 'dig +short n8n.example.com' and ensuring it prints your server's IP. If not, wait a few minutes for DNS to update.\n3. Open ports 80 and 443 using 'sudo ufw allow 80,443/tcp' and check the status with 'sudo ufw status'.\n4. Create the 'n8n' folder and 'docker-compose.yml' file, modifying the subdomain and time zone settings as needed. Also, create a 'Caddyfile' with reverse proxy settings.\n5. Start the n8n containers with 'docker compose up -d' and verify their status with 'docker compose ps'. n8n will start automatically after a reboot.\n6. Create your owner account by visiting 'https://n8n.example.com' and setting a strong password, enabling two-factor authentication.\n7. Regularly update n8n by pulling the latest version with 'docker compose pull' and restarting the containers. Your workflows are stored in the 'n8n_data' volume, ensuring no data loss upon updates.\n8. For backing up your workflows, create an archive of the 'n8n_data' volume using Docker and save it securely. Note that the encryption key is included in the backup, so store it safely.\n\nCommon issues include missing certificates, incorrect webhook URLs, and timezone-related issues. Ensure the subdomain points to the server, fix any typos in 'WEBHOOK_URL', and set the correct timezone settings in 'docker-compose.yml'. If n8n becomes slow or restarts, check your server's memory usage and consider upgrading your VPS plan.",
  "summary": "n8n is a workflow automation tool, like Zapier or Make, that you can run on your own server. Self-hosting it means no limit on workflow executions : you pay for the server, not per run, and your API keys and data stay on a machine you control. This guide sets up n8n the clean way: in Docker , behind Caddy , a small web server that gets a free HTTPS certificate automatically and renews it on its…",
  "key_points": [
    "Install Docker using official script and verify with docker --version",
    "Confirm subdomain points to server via dig command",
    "Open ports 80 and 443 with sudo ufw allow 80,443/tcp"
  ],
  "editors_take": "Self-hosting n8n on a private server replaces costly per-run subscription models with a controlled environment that prioritizes data security and unlimited workflow executions for the user.",
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}