Install N8N di VM Ubuntu 22.04

Dari Dokumentasi Robie
Loncat ke navigasi Loncat ke pencarian

✅ Langkah 1: Persiapan VM di Proxmox

Pastikan VM kamu sudah:

  • Berjalan dengan OS Ubuntu 22.04
  • Memiliki koneksi internet
  • Akses SSH (direkomendasikan)
  • Minimal 2 GB RAM (4 GB lebih baik untuk n8n)
  • Minimal 20 GB storage

Asumsi:

  • IP VM: 192.178.0.12 (ganti sesuai IP kamu)
  • Hostname: n8n-server
  • User: ubuntu atau root

✅ Langkah 2: Update & Upgrade Sistem

Login ke VM via SSH, lalu jalankan:

sudo apt update && sudo apt upgrade -y

✅ Langkah 3: Install Docker & Docker Compose

n8n paling mudah dijalankan dengan Docker.

1. Install Docker

sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io

2. Tambahkan user ke grup docker

Ganti ubuntu dengan user kamu:

sudo usermod -aG docker robie

Log out dan log in kembali agar grup diterapkan.

3. Install Docker Compose (versi plugin)

sudo apt install -y docker-compose-plugin
docker compose version

✅ Langkah 4: Buat Direktori untuk n8n

mkdir -p ~/n8n && cd ~/n8n

✅ Langkah 5: Buat docker-compose.yml

nano docker-compose.yml

Tempel konfigurasi berikut:

version: '3'
services:
  n8n:
    image: n8nio/n8n
    restart: unless-stopped
    ports:
      - "5678:5678"
    environment:
      - N8N_HOST=localhost
      - N8N_PORT=5678
      - N8N_PROTOCOL=http
      - NODE_ENV=production
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=admin
      - N8N_BASIC_AUTH_PASSWORD=rahasia123
      - N8N_ENCRYPTION_KEY=mysecretenckey
    volumes:
      - .//home/node/.n8n
    networks:
      - n8n-network

networks:
  n8n-network:
    driver: bridge

Catatan Keamanan:

  • Ganti N8N_BASIC_AUTH_PASSWORD dengan password kuat.
  • Ganti N8N_ENCRYPTION_KEY dengan string acak panjang.
  • N8N_HOST bisa diubah ke domain jika pakai reverse proxy.

✅ Langkah 6: Jalankan n8n dengan Docker Compose

docker compose up -d

✅ Langkah 7: Cek Status

docker compose ps
docker compose logs -f

Tekan Ctrl+C untuk berhenti dari log.


✅ Langkah 8: Akses n8n dari Browser

Buka:

http://<IP_VM>:5678

Contoh:

http://192.168.1.100:5678

Login:

  • User: admin
  • Password: rahasia123

✅ Langkah 9: (Opsional) Pasang Reverse Proxy dengan Nginx + HTTPS

1. Install Nginx

sudo apt install -y nginx certbot python3-certbot-nginx

2. Konfigurasi Nginx

server {
    listen 80;
    server_name n8n.domainmu.com;

    location / {
        proxy_pass http://localhost:5678;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

3. Aktifkan

sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

4. Ambil SSL

sudo certbot --nginx -d n8n.domainmu.com

✅ Langkah 10: Backup & Keamanan

1. Backup folder data

tar -czf n8n-backup-$(date +%F).tar.gz ~/n8n/data

2. Update n8n

cd ~/n8n
docker compose pull
docker compose up -d

3. Firewall (UFW)

sudo ufw allow 22
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable

✅ Troubleshooting Umum

Masalah Solusi
Tidak bisa akses :5678 Cek firewall Proxmox/VM, pastikan port terbuka
Docker error permission Pastikan user di grup docker dan login ulang
Data hilang setelah restart Pastikan volume ./data benar ter-mount
Login gagal Cek BASIC_AUTH_USER/PASSWORD di compose

🎉 Selesai! Kamu sekarang punya n8n yang berjalan stabil di Ubuntu 20.04 di Proxmox.