← Back to Blog

Self-Host n8n on a VPS: Setup Guide and 12 Business Use Cases

· by RS Computers

n8n Automation VPS

Every business runs on small, repetitive jobs: copying a web form into the CRM, telling the team about a new order, chasing an unpaid invoice, posting the same update on three social networks. n8n is an open-source automation platform that connects your apps and does those jobs for you, and because you can run it on your own server, there is no per-task bill and your data never leaves your machine. This guide explains why companies self-host n8n on a VPS, how to get a server from RS Computers in a few minutes, how to install n8n with Docker, and twelve automations you can build in your first week.

What n8n is, in one minute

n8n (pronounced "n-eight-n") is a visual workflow builder. You drag nodes onto a canvas: a trigger (a webhook, a schedule, a new email, a new row in a sheet) followed by actions (send a message, create a record, call an API, run some code). It ships with more than 400 built-in integrations, including Telegram, WhatsApp Business, Gmail, Google Sheets, WooCommerce, Shopify, Stripe, HubSpot, Pipedrive, Notion, Airtable, Postgres, MySQL, GitHub, Jira and Slack, plus a generic HTTP Request node for anything with an API. Since 2024 it also has native AI nodes: chat triggers, AI agents with tools and memory, and connectors for OpenAI, Anthropic, Google, Mistral, Ollama and vector databases such as Qdrant and pgvector.

Under n8n's Sustainable Use License you can self-host it free of charge for your own business use, with no limit on workflows, executions or users.

Why self-host n8n on a VPS instead of paying per task

Which server do you need?

n8n itself is light: the application, a Postgres database and a reverse proxy sit comfortably in about a gigabyte of memory. What drives the size is how many workflows run at the same time and whether you run AI models locally. All RS Computers plans use KVM virtualisation, NVMe storage, unmetered traffic and include free weekly backups.

PlanGood for
VPS Nano (1 vCPU, 1 GB)Trying n8n out, a handful of personal or low-traffic workflows with the built-in SQLite database.
VPS Micro (2 vCPU, 2 GB)The sweet spot for a small business: n8n with Postgres, dozens of workflows, webhooks from your website and shop, Telegram and email bots.
VPS Mini (4 vCPU, 4 GB)Several users, AI agents calling external models, document processing, scrapers and heavier data syncs running in parallel.
VDS Small to Large (4 to 16 vCPU, 8 to 32 GB, 10 Gb/s)Agencies running automations for many clients, queue mode with worker processes, a vector database, or small local language models with Ollama.

You can start small and move up: the plan can be upgraded from the client area without rebuilding the server.

How to get a VPS or VDS from RS Computers

  1. Pick a location and a plan. Open the VPS & VDS plans page, switch between Amsterdam, Dublin and Prishtina (the page shows which locations have capacity right now) and click Get on the plan you want.
  2. Choose your operating system. For n8n pick Debian 12 or Ubuntu 24.04. You can paste an SSH public key at this step if you have one; otherwise a root password is generated for you.
  3. Pay and wait a minute. The server is built automatically as soon as payment is received, usually within a minute or two. You get an email with the hostname, the IPv4 and IPv6 addresses and the root password.
  4. Point a subdomain at it. In your domain's DNS, create an A record such as n8n.example.com pointing to the server's IPv4 address (and an AAAA record for the IPv6 address if you like). n8n needs HTTPS, and a hostname is what the certificate is issued for.

Already a customer? You can also add a server from the client area, and your existing login works.

Install n8n with Docker in 15 minutes

This setup runs three containers: n8n, a Postgres database and the Caddy web server, which obtains and renews a free HTTPS certificate for you automatically. If Docker on a server is new to you, our Docker on a VPS guide covers the installation, the firewall trap and volume backups in more depth. Log in as root first, replacing the address with your server's:

ssh root@YOUR_SERVER_IP

Step 1: Update the system and install Docker

apt update && apt full-upgrade -y
curl -fsSL https://get.docker.com | sh
docker --version && docker compose version

Step 2: Open only the ports you need

apt install -y ufw
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw --force enable

Port 5678, where n8n listens inside Docker, is never exposed to the internet: Caddy sits in front of it.

Step 3: Create the configuration

Make a folder and generate a long random encryption key. n8n uses it to encrypt the credentials you store, so keep a copy of it somewhere safe; without it your saved logins cannot be decrypted after a restore.

mkdir -p /opt/n8n && cd /opt/n8n
openssl rand -hex 32

Create /opt/n8n/docker-compose.yml. Replace n8n.example.com with your subdomain, the two change-me values with a strong database password and the key you just generated, and the timezone with your own if needed:

services:
  caddy:
    image: caddy:2
    restart: unless-stopped
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - caddy_data:/data
      - caddy_config:/config

  db:
    image: postgres:16
    restart: unless-stopped
    environment:
      POSTGRES_USER: n8n
      POSTGRES_PASSWORD: change-me-database-password
      POSTGRES_DB: n8n
    volumes:
      - db_data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U n8n -d n8n"]
      interval: 5s
      timeout: 5s
      retries: 10

  n8n:
    image: docker.n8n.io/n8nio/n8n
    restart: unless-stopped
    depends_on:
      db:
        condition: service_healthy
    environment:
      N8N_HOST: n8n.example.com
      N8N_PORT: 5678
      N8N_PROTOCOL: https
      WEBHOOK_URL: https://n8n.example.com/
      GENERIC_TIMEZONE: Europe/Belgrade
      TZ: Europe/Belgrade
      N8N_ENCRYPTION_KEY: change-me-paste-the-generated-key
      N8N_RUNNERS_ENABLED: "true"
      DB_TYPE: postgresdb
      DB_POSTGRESDB_HOST: db
      DB_POSTGRESDB_PORT: 5432
      DB_POSTGRESDB_DATABASE: n8n
      DB_POSTGRESDB_USER: n8n
      DB_POSTGRESDB_PASSWORD: change-me-database-password
    volumes:
      - n8n_data:/home/node/.n8n

volumes:
  caddy_data:
  caddy_config:
  db_data:
  n8n_data:

Then create /opt/n8n/Caddyfile with just three lines:

n8n.example.com {
    reverse_proxy n8n:5678
}

Step 4: Start it

cd /opt/n8n && docker compose up -d
docker compose logs -f n8n

When the log shows Editor is now accessible, open https://n8n.example.com in your browser. Caddy will have fetched the certificate in the background (make sure the DNS record from the previous section has had a minute to propagate). The first visit asks you to create the owner account. Go straight to Settings → Personal afterwards and switch on two-factor authentication.

Step 5: Keep it updated and backed up

Updating n8n is two commands, and your workflows, credentials and execution history survive because they live in the named volumes:

cd /opt/n8n && docker compose pull && docker compose up -d

Every RS Computers plan includes a free weekly backup of the whole server, restorable from the client area. For a finer-grained copy, dump the database on a schedule and export your workflows:

docker compose exec -T db pg_dump -U n8n n8n | gzip > /root/n8n-$(date +%F).sql.gz
docker compose exec -T n8n n8n export:workflow --all --output=/home/node/.n8n/workflows-backup.json

You can even make n8n back itself up: a scheduled workflow that runs those commands and uploads the files to object storage is one of the use cases below.

Twelve things businesses automate with n8n

Each of these is a single workflow, and most take under an hour to build. The n8n template library has ready-made versions of many of them that you can import and adapt.

1. Website leads straight into the CRM, with an instant Telegram alert

Trigger: Webhook node receiving your contact form. Actions: create the contact in HubSpot or Pipedrive, add a row to Google Sheets, and send a Telegram message to the sales person with the lead's details. Nobody checks a mailbox, and the first reply goes out in minutes instead of the next morning.

2. New order handling for your web shop

WooCommerce or Shopify order created → generate the invoice, notify the warehouse channel on Slack or Telegram, add the customer to your newsletter list, and if the order value is above a threshold, open a task for a personal thank-you call. One workflow replaces four manual steps per order.

3. Payment and invoice follow-up

Stripe or PayPal events (payment received, payment failed, subscription cancelled) → update the customer record, email a receipt, and for failed payments schedule two polite reminders three days apart. Overdue invoices from your accounting tool can be chased the same way.

4. AI assistant for support tickets and emails

New email or ticket → an AI node classifies it (billing, technical, sales, spam), summarises it in two lines, drafts a reply in the customer's language and posts everything to the right team channel. A human approves or edits before anything is sent. With Ollama on the same VDS, the message content never leaves your server.

5. Telegram, WhatsApp and Discord bots

n8n has first-class nodes for the Telegram Bot API, WhatsApp Business Cloud and Discord. Typical bots: "where is my order?" lookups against your shop database, appointment booking for a clinic or salon, internal commands such as /sales today for managers, and alert channels for your servers.

6. Social media on autopilot

Publish a blog post or add a row to a Notion content calendar → n8n posts to LinkedIn, X and your Facebook page at the scheduled time, with an AI node writing three platform-specific captions from the same source. Weekly engagement numbers are collected back into a sheet.

7. Monitoring and incident alerts

A Schedule trigger checks your websites, APIs and SSL certificate expiry dates every few minutes; failures go to Telegram with a link, and repeat alerts are suppressed until the service is back. Combine it with Uptime Kuma or Grafana webhooks for a complete alerting path that you own.

8. Keeping systems in sync

Products and stock levels from your ERP into the web shop, customers from the shop into the accounting software, deals from the CRM into a Postgres reporting database. Two-way syncs with conflict rules are where a self-hosted instance with unlimited executions really pays off.

9. Automatic reports

Every Monday at 08:00: pull last week's sales, ad spend and support stats, build a chart, write a short AI summary of what changed, and email the PDF to the owner. Daily and monthly versions are the same workflow with a different schedule.

10. Price and competitor monitoring

The HTTP Request and HTML nodes fetch competitor pages or marketplaces on a schedule, extract prices and availability, store them in a database and alert you when something changes by more than a set percentage. A dedicated IP address and unmetered traffic make this painless.

11. HR and office routines

New employee added to the HR sheet → create the email account, Slack invite and Jira access, send the onboarding checklist, and put the first-week meetings in calendars. Leave requests, expense approvals and birthday reminders follow the same pattern.

12. DevOps and backups

GitHub or GitLab push → run the deployment over the SSH node, post the result to the team channel, roll back on failure. A nightly workflow dumps databases, uploads them to S3-compatible storage and verifies the upload. n8n can manage the other servers you run with RS Computers too, over SSH or their APIs.

Security checklist for a production n8n

Frequently asked questions

Can I run n8n on the smallest plan?

Yes, for light use. VPS Nano runs n8n with its default SQLite database and a few workflows. Once you add Postgres, several users or AI steps, VPS Micro or Mini gives you comfortable headroom.

Is self-hosted n8n really unlimited?

There is no cap on workflows, executions or users in the self-hosted community edition for your own business use. A few enterprise features such as single sign-on and environments require a paid n8n licence, but everything in this article runs on the free edition.

Do I need Windows or Linux?

Linux. n8n runs best on Debian or Ubuntu with Docker. Windows Server is available on VPS Mini and all VDS plans if you also need Windows software on the same server, but for n8n alone choose Linux.

Can RS Computers install it for me?

The guide above is the fastest route, but if you would rather we set up n8n, Postgres and HTTPS on a new server for you, message us on Telegram or email info@rscomputers-ks.com and we will quote the setup.

What happens to my workflows if I upgrade the plan?

Nothing. Upgrading adds vCPU, memory and disk to the same server, with a short reboot. Your Docker volumes, workflows and credentials stay in place.

Conclusion

n8n turns the repetitive glue work of a business into workflows that run themselves, and self-hosting it on a VPS removes the two things that hold people back from automating everything: the per-task bill and the worry about where the data goes. A VPS Micro or Mini in Amsterdam, Dublin or Prishtina, fifteen minutes with Docker and Caddy, and you have an automation server with unlimited executions, a fixed IP, free weekly backups and full control. Pick a plan and start with the first use case on this list; the rest tend to follow quickly.

← All articles

Chat on Telegram