Jan 28, 2026
Faradilla A.
7menit Dibaca
Menjalankan n8n dengan Docker adalah salah satu cara paling praktis untuk menghosting tool automasi workflow ini. Jadi, dengan Docker, Anda nantinya bukan menginstal n8n langsung di VPS, melainkan di container terpisah yang tidak mengganggu sistem utama.
Dengan begitu, Anda bisa mengupgrade atau mendowngrade versi n8n dengan mudah, menyesuaikan kapasitasnya sesuai kebutuhan alur kerja Anda, bahkan memindahkan instalannya ke server lain tanpa ribet.
Di artikel ini, Anda akan mempelajari cara menjalankan n8n dengan Docker dan Docker Compose. Kedua tool ini memudahkan Anda mengatur layanan n8n, environment variable, dan layanan pendukung seperti database, cukup dengan satu file YAML.
Langsung saja, simak langkah-langkah selengkapnya di bawah ini untuk menginstal, mengonfigurasi, mengamankan, dan mengupdate instance n8n Anda dengan Docker.
Untuk menjalankan n8n secara self-hosted menggunakan Docker, Anda perlu menginstal Docker dan Docker Compose di VPS. Setelah itu, buat file Docker Compose untuk mengonfigurasi layanan n8n Anda. Selanjutnya, Anda bisa langsung menjalankan container n8n dengan perintah docker compose up -d.
Setelah instance n8n Anda berjalan, Anda juga bisa mengamankannya dengan SSL dan reverse proxy, menyesuaikan environment variable sesuai kebutuhan, serta mengupdate n8n saat ada versi terbaru yang dirilis.
Kami akan menjelaskan langkah-langkahnya secara lebih mendetail di bawah ini.
Apabila ingin menginstal n8n langsung di VPS tanpa Docker, Anda bisa membaca panduan kami tentang cara self-host n8n di VPS sendiri.
Pertama, pastikan Docker sudah terinstal di server Anda. Sejak Docker versi 20.10.0, Docker Compose sudah disertakan secara default sebagai plugin, jadi Anda tidak perlu lagi menginstalnya secara terpisah.
Apabila menggunakan layanan VPS Docker dari Hostinger, Anda tidak perlu repot-repot melakukan langkah ini karena Docker sudah langsung terinstal di server Anda.
Tenang, meskipun menggunakan paket VPS Hostinger biasa, Anda tetap bisa menginstal Docker menggunakan template siap pakai maupun secara manual melalui terminal.
Nah, kalau Anda memilih menginstalnya secara manual, jalankan perintah Linux berikut di terminal untuk memastikan Docker sudah terinstal:
docker -v
Perintah ini akan menampilkan versi Docker yang aktif, contohnya seperti ini:

Selanjutnya, buat direktori khusus untuk menyimpan data dan file konfigurasi n8n. Jalankan perintah berikut ini di terminal untuk membuat direktori utama n8n dan mengaksesnya:
mkdir ~/n8n && cd ~/n8n
Setelah masuk ke direktori tersebut, buat subfolder bernama n8n_data untuk menyimpan data persisten n8n:
mkdir n8n_data
Atur hak kepemilikan direktori tersebut agar Docker bisa mengaksesnya dengan benar:
sudo chown -R 1000:1000 n8n_data

Setelah direktori siap, sekarang saatnya membuat file Docker Compose yang akan digunakan untuk mengonfigurasi layanan n8n, environment variable, dan volume penyimpanan.
Gunakan editor teks nano untuk membuat file:
sudo nano docker-compose.yml
Tempel konfigurasi berikut, dan jangan lupa untuk mengganti yourUser serta yourPassword dengan username dan password yang Anda inginkan:
services:
n8n:
image: n8nio/n8n
ports:
- "5678:5678"
environment:
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=yourUser
- N8N_BASIC_AUTH_PASSWORD=yourPassword
volumes:
- ./n8n_data:/home/node/.n8n
Setelah selesai, simpan dan keluar dari nano dengan menekan Ctrl + X, lalu Y, kemudian Enter.
Sekarang jalankan container n8n dengan perintah berikut:
docker compose up -d
Anda akan melihat proses inisialisasi kontainer. Kalau berhasil, akan muncul pesan seperti Created dan Started, seperti pada screenshot di bawah ini:

Untuk memastikan container n8n sudah berjalan, buka alamat berikut di browser Anda (ganti your_vps_ip dengan IP VPS Anda sendiri):
http://your_vps_ip:5678
Apabila menggunakan VPS Hostinger, Anda bisa melihat IP server di hPanel melalui menu VPS → Kelola → Ringkasan → Detail VPS.

Kalau muncul pesan error terkait “secure cookie” saat membuka alamat tersebut, tidak perlu panik. Pesan ini menandakan n8n sudah berjalan, tapi koneksi belum diamankan dengan SSL. Tenang, kita akan mempelajari solusi mengatasinya nanti di bagian berikutnya.

Untuk mengakses instance n8n Anda dengan aman melalui HTTPS, Anda perlu mengaktifkan sertifikat SSL dan mengatur reverse proxy menggunakan NGINX.
Pertama, instal web server NGINX di VPS Anda:
sudo apt install nginx -y
Setelah itu, hentikan sementara layanan NGINX:
sudo systemctl stop nginx
Lanjutkan dengan menginstal Certbot, tool yang digunakan untuk mendapatkan sertifikat SSL:
sudo apt install certbot -y
Kemudian, jalankan perintah berikut untuk meminta sertifikat SSL dari Certbot. Ganti yourdomain.tld dengan nama domain Anda yang sudah diarahkan ke VPS. Kalau belum memiliki domain, Anda bisa menggunakan hostname VPS Anda:
sudo certbot certonly --standalone -d yourdomain.tld
Selama proses ini, Anda akan diminta mengisi alamat email yang valid, menyetujui syarat layanan, dan memilih apakah ingin menerima email promosi atau tidak.
Kalau sudah selesai, jalankan kembali layanan NGINX:
sudo systemctl start nginx
Selanjutnya, buat file konfigurasi baru untuk mengatur reverse proxy dengan NGINX:
sudo nano /etc/nginx/sites-available/n8n
Kemudian, tempelkan konfigurasi berikut ke dalam file tersebut. Jangan lupa ganti yourdomain.tld dengan domain atau hostname milik Anda:
server {
listen 443 ssl;
server_name yourdomain.tld;
ssl_certificate /etc/letsencrypt/live/yourdomain.tld/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.tld/privkey.pem;
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;
}
}
server {
listen 80;
server_name yourdomain.tld;
return 301 https://$host$request_uri;
}
Setelah selesai, simpan dan keluar dari editor, lalu jalankan perintah berikut untuk mengaktifkan konfigurasi tersebut:
sudo ln -sf /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/n8n
Cek apakah konfigurasi NGINX Anda valid:
sudo nginx -t
Kalau tidak ada error, muat ulang layanan NGINX agar perubahan diterapkan:
sudo systemctl reload nginx
Sekarang, coba akses instance n8n Anda melalui domain atau hostname yang sudah Anda konfigurasikan. Apabila semuanya berjalan lancar, Anda akan diarahkan ke halaman pendaftaran akun pemilik n8n. Di sini, Anda bisa mendaftar akun menggunakan kredensial pilihan Anda.

Setelah itu, Anda akan masuk ke dashboard n8n untuk mulai membuat workflow automasi. Apabila membutuhkan inspirasi, simak artikel kami tentang contoh workflow n8n yang akan memandu Anda membuat workflow dengan mudah.
Kalau ingin workflow siap pakai, tersedia juga template n8n yang bisa langsung Anda terapkan untuk berbagai skenario.
Jangan lupa untuk mengeksplorasi berbagai integrasi n8n untuk melihat layanan apa saja yang bisa Anda hubungkan, tool yang tersedia, dan ide penggunaannya dalam workflow Anda.
Saat mengelola instance n8n, terkadang Anda mungkin perlu mengubah environment variable untuk mengatur koneksi database, mengaktifkan autentikasi, integrasi pihak ketiga, atau meningkatkan keamanan.
Untuk melakukannya, buka kembali file Docker Compose Anda:
sudo nano docker-compose.yml
Di bagian environment, Anda bisa menambahkan atau mengubah konfigurasi container n8n Anda sesuai kebutuhan. Berikut beberapa environment variable yang umum digunakan:
- N8N_ENCRYPTION_KEY=yourStrongRandomString
- N8N_HOST=yourdomain.tld - N8N_PORT=5678 - N8N_PROTOCOL=https
- WEBHOOK_URL=https://youdomain.tld
- DB_TYPE=postgresdb - DB_POSTGRESDB_HOST=your_postgres_host - DB_POSTGRESDB_PORT=5432 - DB_POSTGRESDB_DATABASE=your_database_name - DB_POSTGRESDB_USER=your_db_user - DB_POSTGRESDB_PASSWORD=your_db_password
- TZ=UTC
Simpan file setelah Anda melakukan perubahan yang diperlukan.
Selanjutnya, jalankan perintah Docker berikut untuk menghentikan container n8n:
docker compose down
Jalankan kembali container dengan environment variable yang sudah diperbarui:
docker compose up -d

Apabila Anda hanya ingin memulai ulang container Docker n8n tanpa memodifikasi file Compose, gunakan perintah docker compose restart.
Untuk menjaga keamanan dan mendapatkan fitur-fitur terbaru, sebaiknya Anda rutin mengupdate n8n ke versi terbaru.
Untuk melakukan update, download image n8n terbaru dari Docker Hub:
docker pull n8nio/n8n
Setelah itu, mulai ulang container n8n menggunakan image yang baru saja didownload:
docker compose up -d

Berikut beberapa praktik terbaik yang bisa Anda terapkan saat menjalankan n8n di Docker, yang sebagiannya sudah dibahas di tutorial ini:
docker cp n8n:/home/node/.n8n /path/to/backup/folder
deploy:
resources:
limits:
cpus: '1'
memory: 1GMenjalankan n8n dengan Docker membuat proses self-hosting menjadi jauh lebih mudah dan fleksibel. Docker menyediakan lingkungan yang portabel dan konsisten di berbagai sistem sehingga n8n bisa dijalankan di mana saja. Namun, agar workflow berjalan lancar, Anda membutuhkan VPS.
Berbeda dengan menjalankannya di komputer sendiri, VPS memungkinkan workflow Anda tetap aktif meskipun komputer Anda mati atau tidak terhubung ke internet. Anda juga bisa mengakses dan mengelola n8n dari mana pun, tanpa batasan jaringan lokal.
Oleh karena itu, kami menyarankan Anda menggunakan VPS Docker dari Hostinger untuk self-hosting aplikasi berbasis container seperti n8n. Docker dan semua dependensi penting sudah terinstal sejak awal sehingga Anda bisa langsung menjalankan n8n tanpa repot melakukan konfigurasi tambahan.
Kami juga memiliki pusat data di berbagai wilayah di seluruh dunia, jadi Anda bisa memilih server yang paling dekat dengan lokasi Anda untuk mengurangi latensi. Dengan jaminan uptime 99,9% dari Hostinger, workflow automasi Anda akan tetap online dan stabil sepanjang waktu.
Dengan biaya mulai dari Rp77900.00/bulan, Anda sudah mendapatkan paket VPS Docker dengan spesifikasi hingga 8 core vCPU, 32 GB RAM, dan 400 GB penyimpanan NVMe. Anda bisa menggunakan paket kecil dulu, lalu mengupgradenya dengan mudah seiring meningkatnya kebutuhan Anda.
Tentu saja, keamanan adalah prioritas utama kami. Paket VPS Docker dari Hostinger sudah dilengkapi dengan backup otomatis, perlindungan DDoS tingkat lanjut, dan malware scanner untuk menjaga data Anda tetap aman, menghalau serangan, dan mencegah gangguan terhadap instance n8n Anda.

Dengan menjalankan n8n secara self-hosted menggunakan Docker, Anda bisa mengontrol proses automasi workflow Anda secara lebih leluasa. Dengan cara ini, Anda bisa menjalankan n8n dan menyesuaikannya dengan kebutuhan Anda secara lebih aman.
Nah, setelah berhasil menjalankan n8n, berikut beberapa hal yang bisa Anda lakukan selanjutnya:
Apabila Anda masih memiliki pertanyaan tentang menjalankan atau mengelola n8n dengan Docker, jangan ragu untuk menyampaikannya lewat kolom komentar di bawah ini, ya. Semoga berhasil!
Semua konten tutorial di website ini telah melalui peninjauan menyeluruh sesuai standar dan komitmen editorial Hostinger.