Preskoči na sadržaj
NovoPustili smo novi sajt sa mnogo novih opcija — AI Builder uskoro

Vodič · oko 45 minuta

Kako instalirati n8n na VPS: Docker Compose, domen i SSL

n8n je alat za automatizacije: povezuje aplikacije (Gmail, Google Sheets, WooCommerce, CRM, AI modele) u tokove koje crtate mišem. Na sopstvenom serveru nema ograničenja broja izvršavanja, a podaci ostaju kod vas.

Ubuntu 24.04Docker ComposeBesplatan SSL preko Caddy-ja
BRZI ODGOVOR

Kako da instaliram n8n na svoj server?

Najkraći put: VPS sa Ubuntu 24.04, instaliran Docker, poddomen (npr. n8n.vasdomen.rs) usmeren na IP servera i docker-compose.yml sa n8n-om i Caddy-jem, koji sam pribavlja SSL. Posle docker compose up -d otvorite https://n8n.vasdomen.rs i napravite vlasnički nalog. Za jednog korisnika dovoljan je CLOUD 2 sa 4 GB RAM-a (1.790 RSD mesečno).

  • Port 5678 se ne otvara ka internetu; sav saobraćaj ide preko Caddy-ja i HTTPS-a
  • Ključ N8N_ENCRYPTION_KEY čuvajte van servera
  • Ažuriranje: docker compose pull i docker compose up -d

Ažurirano: · BeoHosting tim

Šta vam treba

Preduslovi za n8n na VPS-u
ŠtaPreporuka
ServerVPS sa najmanje 2 GB RAM-a; kod nas CLOUD 2 (4 GB, 1.790 RSD mesečno)
Operativni sistemUbuntu 24.04 (komande u vodiču su za njega)
DomenPoddomen kao n8n.vasdomen.rs, sa A zapisom ka IP adresi servera
SoftverDocker Engine sa Compose dodatkom
ZnanjeOsnovni rad u terminalu preko SSH-a

Korak 1–3: VPS, DNS i Docker

  1. Poručite VPS sa Ubuntu 24.04. Za jednog korisnika i nekoliko desetina workflow-a dovoljan je CLOUD 2 (2 vCPU, 4 GB RAM, 1.790 RSD mesečno). Pri porudžbini izaberite Ubuntu 24.04 i sačuvajte IP adresu i root lozinku.
  2. Usmerite poddomen na server. Kod registra ili u DNS zoni domena dodajte A zapis, na primer n8n.vasdomen.rs, sa IP adresom VPS-a. Caddy će kasnije za taj poddomen sam izdati SSL sertifikat.
  3. Instalirajte Docker i uključite firewall. Instalirajte Docker Engine sa Compose dodatkom iz zvaničnog Docker repozitorijuma, pa u firewall-u otvorite samo portove 22, 80 i 443.

Prijavite se na server (ssh root@IP-adresa) i proverite da poddomen pokazuje na njega:

Provera DNS-a
dig +short n8n.vasdomen.rs
# treba da ispiše IP adresu vašeg VPS-a

Docker instalirajte iz zvaničnog repozitorijuma (detaljno u vodiču kako instalirati Docker na VPS), pa uključite firewall:

Docker i firewall (Ubuntu 24.04)
apt-get update && apt-get install -y ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" > /etc/apt/sources.list.d/docker.list
apt-get update && apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

ufw allow 22/tcp && ufw allow 80/tcp && ufw allow 443/tcp && ufw enable

Korak 4–5: .env, docker-compose.yml i Caddyfile

Folder i ključ
mkdir -p /opt/n8n && cd /opt/n8n
echo "N8N_DOMAIN=n8n.vasdomen.rs" > .env
echo "N8N_ENCRYPTION_KEY=$(openssl rand -hex 32)" >> .env
chmod 600 .env
cat .env   # ključ prepišite u menadžer lozinki
/opt/n8n/docker-compose.yml
services:
  n8n:
    image: docker.n8n.io/n8nio/n8n:latest
    restart: unless-stopped
    environment:
      - N8N_HOST=${N8N_DOMAIN}
      - N8N_PORT=5678
      - N8N_PROTOCOL=https
      - WEBHOOK_URL=https://${N8N_DOMAIN}/
      - N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY}
      - N8N_PROXY_HOPS=1
      - GENERIC_TIMEZONE=Europe/Belgrade
      - TZ=Europe/Belgrade
    volumes:
      - n8n_data:/home/node/.n8n

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

volumes:
  n8n_data:
  caddy_data:
  caddy_config:
/opt/n8n/Caddyfile
n8n.vasdomen.rs {
    reverse_proxy n8n:5678
}

Korak 6: pokretanje i prvi nalog

Pokretanje
cd /opt/n8n
docker compose up -d
docker compose ps        # oba servisa treba da imaju status "Up"
docker compose logs -f n8n

Otvorite https://n8n.vasdomen.rs. Prvi ekran traži da napravite vlasnički nalog: unesite email i jaku lozinku. Taj nalog upravlja svim ostalima, pa mu odmah uključite dvofaktorsku prijavu u podešavanjima profila.

Korak 7: backup i ažuriranje

Izvoz workflow-a i pristupnih podataka u folder na serveru, pa kopija van servera:

Backup
cd /opt/n8n
docker compose exec n8n n8n export:workflow --backup --output=/home/node/.n8n/backup/workflows/
docker compose exec n8n n8n export:credentials --backup --output=/home/node/.n8n/backup/credentials/
docker compose cp n8n:/home/node/.n8n/backup ./backup-$(date +%F)

Folder backup-DATUM kopirajte van servera (na primer rsync ka backup prostoru ili na svoj računar). Izvezeni pristupni podaci su šifrovani ključem iz .env; bez ključa se ne mogu vratiti. Komande možete staviti u cron, jednom dnevno.

Ažuriranje na novu verziju
cd /opt/n8n
docker compose pull
docker compose up -d
docker image prune -f

Pre većeg skoka verzije pročitajte napomene o izdanju na docs.n8n.io i napravite backup.

Tri primera iz prakse

  1. Porudžbina iz WooCommerce-a u Google Sheets. WooCommerce Trigger (događaj „order.created“) → Google Sheets „Append row“ sa brojem porudžbine, kupcem, iznosom i načinom plaćanja. Knjigovođa dobija tabelu bez ručnog prepisivanja.
  2. Upit sa kontakt forme, razvrstan pomoću AI-ja. Webhook (forma šalje POST) → AI korak koji upit svrsta u „ponuda“, „podrška“ ili „spam“ → Gmail ili Slack poruka pravoj osobi. Spam se ne prosleđuje.
  3. Podsetnik pre isteka. Schedule Trigger svakog jutra → čitanje datuma isteka ugovora ili domena iz tabele → email ili SMS (HTTP Request ka API-ju vašeg SMS provajdera) za sve kojima ističe za 30 dana.

Česte greške

Česte greške pri instalaciji n8n-a
SimptomUzrok i rešenje
Pregledač javlja da sertifikat nije validanA zapis još ne pokazuje na server ili port 80 nije otvoren. Proverite dig i ufw status, pa docker compose restart caddy.
Webhook adrese u n8n-u počinju sa http://localhost:5678Nije podešen WEBHOOK_URL. Dodajte ga u docker-compose.yml i pokrenite docker compose up -d.
Posle vraćanja backup-a pristupni podaci ne radeNovi server ima drugi N8N_ENCRYPTION_KEY. Vratite stari ključ u .env.
Greška „permission denied“ na /home/node/.n8nVolumen je pravljen ručno kao root. Koristite imenovani volumen kao u primeru ili vlasnika postavite na UID 1000.

Kad n8n radi, možete da ga povežete i sa sopstvenim AI modelom: vodič Ollama na VPS serveru. Šta još može da radi na VPS-u za AI projekte piše na stranici AI hosting.

Paketi i cene

VPS za n8n

PreporukaVPS · root

CLOUD 2

Jedan korisnik, SQLite, desetine workflow-a.

1.790 RSD mesečno

ili 19.690 RSD godišnje

vCPU
2
RAM
4 GB
Disk
40 GB NVMe
Protok
5 TB
Naruči CLOUD 2

Kartica, uplatnica ili PayPal · faktura za firme

VPS · root

CLOUD 4

Tim, PostgreSQL, AI koraci i više servisa.

3.390 RSD mesečno

ili 37.290 RSD godišnje

vCPU
4
RAM
8 GB
Disk
80 GB NVMe
Protok
10 TB
Naruči CLOUD 4

Kartica, uplatnica ili PayPal · faktura za firme

VPS je neupravljan: sistem i n8n održavate vi, a upravljanje serverom se doplaćuje. Cene su konačne, BeoHosting nije u sistemu PDV-a.

Pitanja o n8n-u

Licenca, RAM, Google nalozi i backup.

Da li je n8n besplatan za self-hosting?

Community verzija je besplatna i izvorni kod je javan, pod licencom Sustainable Use License. Smete da je koristite za svoje i interne poslovne potrebe i za automatizacije koje radite za klijente. Ne smete da prodajete n8n kao uslugu drugima (na primer da naplaćujete pristup svom n8n-u kao proizvodu). Neke funkcije za timove (SSO, okruženja, napredne dozvole) su samo u plaćenim verzijama.

Koliko RAM-a treba za n8n?

Za jednog korisnika sa SQLite bazom dovoljno je 2 do 4 GB RAM-a, pa je CLOUD 2 (4 GB) dobar početak. Ako planirate više korisnika, PostgreSQL bazu, mnogo izvršavanja ili AI korake sa velikim podacima, uzmite CLOUD 4 (8 GB, 3.390 RSD mesečno).

Da li n8n radi sa Gmail-om i Google Sheets-om?

Radi. Za Google servise u Google Cloud konzoli napravite OAuth klijent i kao adresu za povratak (redirect URL) unesite https://n8n.vasdomen.rs/rest/oauth2-credential/callback. Zato je važno da WEBHOOK_URL i domen budu podešeni pre povezivanja naloga.

Kako da ne izgubim workflow-e?

Čuvajte tri stvari: izvoz workflow-a, izvoz pristupnih podataka i ključ N8N_ENCRYPTION_KEY. Bez tog ključa izvezeni pristupni podaci se ne mogu dešifrovati. Komande za izvoz su u odeljku o backup-u, a kopije držite van servera.

Koja je razlika između n8n Cloud-a i sopstvenog servera?

Na n8n Cloud-u server održava n8n, a plaćate pretplatu prema broju izvršavanja. Na sopstvenom VPS-u plaćate server, broj izvršavanja nije ograničen licencom, podaci ostaju na vašem serveru, ali ažuriranja, backup i bezbednost radite vi.

Mogu li n8n da pokrenem na cPanel hostingu?

Ne. n8n treba proces koji radi stalno i Docker, a cPanel paket pokreće aplikacije samo kad stigne zahtev i nema root pristup. Za n8n je potreban VPS. Gotov izbor paketa je na stranici n8n hosting.