Cara Install n8n di VPS dengan Docker: Tutorial Langkah demi Langkah
Zapier dan alat sejenisnya menagih per task: makin rajin automation Anda bekerja, makin besar tagihannya. n8n membalik hitungan itu. Sekali dipasang di VPS milik sendiri, ia menjalankan ribuan eksekusi tanpa biaya tambahan, dan seluruh data alur kerja Anda tinggal di server Anda, bukan di server orang lain. Harganya: satu sore untuk memasangnya dengan benar. Panduan ini memandu sore itu, langkah demi langkah.
Yang Anda butuhkan sebelum mulai
- Satu VPS dengan Ubuntu 22.04 atau lebih baru. RAM 2 GB cukup untuk memulai; 1 GB bisa jalan tapi akan sesak begitu workflow bertambah.
- Akses SSH ke server itu sebagai user yang punya hak sudo.
- Satu subdomain (misalnya
n8n.usaha-anda.com) kalau nantinya ingin diakses lewat HTTPS. Untuk hari pertama, alamat IP saja cukup.
Kalau belum punya VPS, hampir semua penyedia lokal maupun luar menawarkan paket kecil yang memadai. Pilih lokasi data center yang dekat dengan pengguna Anda; untuk pemakaian dari Indonesia, Singapura biasanya pilihan aman.
Langkah 1: Siapkan VPS dan Docker
Masuk ke server lewat SSH, lalu pasang Docker dengan skrip resmi:
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
Keluar dari SSH lalu masuk lagi supaya keanggotaan grup docker aktif. Uji dengan:
docker run --rm hello-world
Kalau muncul pesan "Hello from Docker!", fondasinya siap. Kalau perintah docker ditolak karena izin, Anda belum keluar-masuk SSH setelah usermod tadi.
Langkah 2: Jalankan n8n dengan docker compose
Buat folder kerja dan satu file docker-compose.yml:
mkdir -p ~/n8n && cd ~/n8n
nano docker-compose.yml
Isi dengan konfigurasi minimum yang layak produksi kecil:
services:
n8n:
image: docker.n8n.io/n8nio/n8n
restart: unless-stopped
ports:
- "5678:5678"
environment:
- N8N_HOST=IP_SERVER_ANDA
- WEBHOOK_URL=http://IP_SERVER_ANDA:5678/
- GENERIC_TIMEZONE=Asia/Jakarta
- TZ=Asia/Jakarta
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
Dua baris zona waktu itu bukan hiasan: tanpa itu, workflow terjadwal Anda akan jalan mengikuti jam UTC dan laporan "jam 7 pagi" tiba jam 2 siang. Baris volumes juga penting — di situlah semua workflow dan credential disimpan, jadi data selamat walau container dibuat ulang.
Jalankan:
docker compose up -d
Langkah 3: Buka n8n dan buat akun owner
Buka http://IP_SERVER_ANDA:5678 di browser. n8n akan meminta Anda membuat akun owner: email dan password. Akun ini memegang seluruh instance, jadi pakai password yang panjang dan simpan di password manager, bukan di sticky note.
Setelah masuk, Anda akan melihat kanvas kosong. Berhenti sejenak di sini dan periksa satu hal: coba akses alamat yang sama dari perangkat lain. Kalau bisa diakses, artinya semua orang di internet juga bisa mencoba halaman login Anda. Untuk pemakaian lebih dari sekadar uji coba, tutup port 5678 dari publik dan taruh n8n di belakang reverse proxy dengan HTTPS — kami membahasnya di tutorial terpisah tentang pengamanan n8n.
Masalah yang paling sering muncul
| Gejala | Penyebab yang paling mungkin | Cara cek |
|---|---|---|
| Halaman tidak terbuka sama sekali | Firewall VPS menutup port 5678 | Cek aturan firewall penyedia VPS dan ufw status |
| Container mati sendiri | RAM habis | docker compose logs dan free -m |
| Workflow terjadwal jalan di jam aneh | Zona waktu belum diset | Pastikan GENERIC_TIMEZONE ada, lalu docker compose up -d ulang |
| Webhook dari luar tidak masuk | WEBHOOK_URL masih salah | Samakan dengan alamat yang benar-benar bisa diakses publik |
Satu kebiasaan yang menyelamatkan banyak jam: setiap kali ada yang aneh, mulai dari docker compose logs -f. Hampir semua jawaban ada di sana sebelum Anda sempat menebak-nebak.
Kapan self-hosted bukan pilihan tepat
Jujur saja: memasang sendiri berarti merawat sendiri. Anda yang bertanggung jawab atas update, backup, dan keamanan server. Kalau tidak ada satu pun orang di tim yang nyaman membuka terminal, paket cloud resmi n8n atau alat seperti Make lebih masuk akal — Anda membayar lebih untuk tidur lebih nyenyak. Self-hosted unggul ketika volume eksekusi tinggi, data sensitif, atau kebutuhan integrasinya tidak lazim.
Ada juga jalan tengah: mulai dari cloud untuk membuktikan automation-nya berguna, lalu pindah ke self-hosted saat tagihan bulanan mulai terasa. Workflow n8n bisa diekspor dan diimpor antar instance, jadi pindah rumah bukan mulai dari nol.
Langkah berikutnya
Instance yang hidup baru setengah cerita; setengah lagi adalah workflow pertama yang benar-benar bekerja untuk Anda. Tutorial workflow pertama terbit besok di blog ini — mulai dari konsep node dan trigger sampai workflow yang jalan sendiri.
Kalau Anda ingin automation-nya dipikirkan dan dipasang orang lain sementara Anda fokus ke usaha, lihat layanan AI automation Clovertechno, baca dulu tujuh proses kantor yang paling layak diotomasi, atau langsung konsultasikan kebutuhan Anda.
Clovertechno