Skip to content

VPS & dedicated

Install n8n on a LogicWeb VPS

Run n8n in Docker on your VPS with a data volume, a reverse proxy, and a snapshot you can restore.

Updated Aug 29, 20263 min read11 reads
Install n8n on a LogicWeb VPS
Snapshot the VPS, start n8n with Docker, then put HTTPS in front of port 5678.

You install n8n on a LogicWeb VPS by running the official Docker image with a persistent volume and a reverse proxy that terminates TLS. Shared hosting will not work for this, because n8n needs root-level container access. A LogicWeb VPS gives you KVM, root login, and snapshots, which is the right base for the steps below.

Snapshot the VPS, then install Docker

Open Virtualizor and take a snapshot before you install packages or pull images. That way you can restore cleanly if a compose file or package step goes wrong. Install Docker CE from Docker’s own repository, not from an unknown snap or third-party script you have not reviewed.

bash
sudo apt-get update
sudo apt-get install -y ca-certificates curl
# then Docker’s official convenience script, or the apt repo they publish
sudo docker version

If docker version fails, stop and fix Docker before you continue. Do not run Compose on a partial install. Restoring the snapshot is faster than untangling a broken container runtime.

Create a compose file you can maintain

Save a simple Compose file that binds n8n to localhost only and stores data in a named volume. Replace the example hostname with the one you will use on the proxy.

yaml
services:
  n8n:
    image: n8nio/n8n:latest
    restart: unless-stopped
    ports:
      – “127.0.0.1:5678:5678”
    environment:
      – N8N_HOST=n8n.example.com
      – N8N_PROTOCOL=https
      – N8N_PORT=443
      – WEBHOOK_URL=https://n8n.example.com/
    volumes:
      – n8n_data:/home/node/.n8n
volumes:
  n8n_data:

Bind 127.0.0.1:5678, not 0.0.0.0. Put Caddy, nginx, or another reverse proxy in front with a Let’s Encrypt certificate for your hostname. Create the owner account over HTTPS on that hostname, not by opening port 5678 from a public network.

From the directory with your Compose file, start the stack and confirm the container is healthy before you point DNS at the proxy.

bash
sudo docker compose up -d
sudo docker compose ps

Harden the install after it runs

  1. Create the owner user at https://n8n.example.com while the proxy and certificate are working.
  2. Turn on basic auth or SSO in n8n if more than one person will use the editor.
  3. Pin the image tag once the install is stable, because :latest can change under you on the next pull.
  4. Back up the n8n_data volume on a schedule; your workflows live there unless you exported them.

A quiet editor fits a modest VPS. If you also run a local model on the same guest, size the plan for both workloads and read Ollama on a VPS first. If workflows feel slow, check load and CPU steal before you assume n8n itself is the problem.

In short, n8n on LogicWeb is Docker, a volume, and a proxy on a VPS with root. Snapshot first, bind localhost, pin the tag, and keep 5678 off the public internet.

Share

Send this article

Need someone else to do this? Send them the link — the commands are in the article.

Was this article helpful?

Be the first to rate this article.