GHOSTVPS / Otomasyon

Docker ve SSH tüneliyle özel n8n kurulumu

5678 portunu internete açmadan özel n8n düzenleyicisi çalıştırın.

Güncelleme · GhostVPS

Başlamadan önce

Sudo, Docker Engine 28+, Compose v2 ve SSH bulunan yeni Linux VPS gerekir. Önce resmî Docker kurulumunu tamamlayın. SQLite ve tek konteyner örneği deneme/elle çalıştırılan akışlar içindir; üretim kümesi veya genel webhook kurulumu değildir. Mevcut n8n kurulumunun üzerine uygulamayın.

Ön koşulları kontrol edin

VPS üzerinde iki komut da başarılı olmalıdır. Eksik bileşen için resmî Docker kurulumuna bakın; bilinmeyen kurulum betiğini root kabuğuna yönlendirmeyin. Kaynakları rastgele bir RAM alt sınırına değil, iş akışlarınıza göre planlayın.

VPS sunucunuz · Linux terminali

sudo docker version
sudo docker compose version
Ön koşulları kontrol edin. Gerçek rootless Docker testi; bu kurulumda sudo gerekmez. n8n 2.45.5 kaydedilen demo sürümüdür, en güncel üretim sürümü önerisi değildir.
Ön koşulları kontrol edin. Gerçek rootless Docker testi; bu kurulumda sudo gerekmez. n8n 2.45.5 kaydedilen demo sürümüdür, en güncel üretim sürümü önerisi değildir.

Proje ve sürüm seçin

Yeni klasör ve .env dosyası oluşturun. REPLACE_WITH_REVIEWED_STABLE_VERSION yerine resmî n8n sürümlerinden desteklenen belirli kararlı sürümü yazın; güvenlik ve yükseltme notlarını okuyun. Yer tutucuyu bırakmayın, incelenmemiş değişken etiket kullanmayın.

VPS sunucunuz · Linux terminali

mkdir -m 700 ~/n8n-private
cd ~/n8n-private
nano .env

Dosya içeriği

N8N_VERSION=REPLACE_WITH_REVIEWED_STABLE_VERSION
Proje ve sürüm seçin. Gerçek rootless Docker testi; bu kurulumda sudo gerekmez. n8n 2.45.5 kaydedilen demo sürümüdür, en güncel üretim sürümü önerisi değildir.
Proje ve sürüm seçin. Gerçek rootless Docker testi; bu kurulumda sudo gerekmez. n8n 2.45.5 kaydedilen demo sürümüdür, en güncel üretim sürümü önerisi değildir.

Yerel bağlantılı Compose dosyasını kaydedin

İçeriği proje klasöründe compose.yaml olarak kaydedin. Yayımlanan tek adres 127.0.0.1 olur. Adlandırılmış birim, konteyner yeniden oluşturulduğunda veritabanını ve üretilen şifreleme anahtarını saklar. Adresi 0.0.0.0 yapmayın ve Docker socket bağlamayın.

Dosya içeriği

services:
  n8n:
    image: docker.n8n.io/n8nio/n8n:${N8N_VERSION:?Set N8N_VERSION in .env}
    restart: unless-stopped
    ports:
      - "127.0.0.1:5678:5678"
    environment:
      TZ: Etc/UTC
      GENERIC_TIMEZONE: Etc/UTC
      N8N_HOST: localhost
      N8N_PORT: "5678"
      N8N_PROTOCOL: http
      N8N_EDITOR_BASE_URL: http://localhost:5678
      N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS: "true"
    volumes:
      - n8n_data:/home/node/.n8n
volumes:
  n8n_data:
Yerel bağlantılı Compose dosyasını kaydedin. Gerçek rootless Docker testi; bu kurulumda sudo gerekmez. n8n 2.45.5 kaydedilen demo sürümüdür, en güncel üretim sürümü önerisi değildir.
Yerel bağlantılı Compose dosyasını kaydedin. Gerçek rootless Docker testi; bu kurulumda sudo gerekmez. n8n 2.45.5 kaydedilen demo sürümüdür, en güncel üretim sürümü önerisi değildir.

Doğrulayın ve başlatın

Önce yalnızca izin ve config kontrollerini çalıştırın. Hata varsa pull veya up öncesi düzeltin. Başlatıldıktan sonra compose ps çalışan n8n göstermelidir. Sorunda günlükleri inceleyin; tünel sorununu çözmek için düzenleyiciyi internete açmayın.

VPS sunucunuz · Linux terminali

chmod 600 .env &&
grep -Eq '^N8N_VERSION=[0-9]+[.][0-9]+[.][0-9]+$' .env &&
sudo docker compose config --quiet &&
sudo docker compose pull &&
sudo docker compose up -d &&
sudo docker compose ps
Doğrulayın ve başlatın. Gerçek rootless Docker testi; bu kurulumda sudo gerekmez. n8n 2.45.5 kaydedilen demo sürümüdür, en güncel üretim sürümü önerisi değildir.
Doğrulayın ve başlatın. Gerçek rootless Docker testi; bu kurulumda sudo gerekmez. n8n 2.45.5 kaydedilen demo sürümüdür, en güncel üretim sürümü önerisi değildir.

SSH tüneliyle bağlanın

Kendi bilgisayarınızda hesap ve adresi değiştirerek SSH komutunu çalıştırın. Sunucu parmak izini güvenilir kanaldan doğrulayın. Terminal açık kalsın; aynı bilgisayarda http://localhost:5678 açıp sahip hesabı oluşturun. Port doluysa sol tarafta 15678 kullanıp localhost:15678 açın.

Bilgisayarınız · terminal

ssh -N -o ExitOnForwardFailure=yes -L 127.0.0.1:5678:127.0.0.1:5678 deploy@203.0.113.10

İzole n8n 2.45.5 denemesinden gerçek ekran görüntüleridir. Arayüz sürüme göre değişebilir. Tam boyut için görseli açın.

Boş n8n sahip hesabı formu
Özel SSH tüneliyle n8n açıldıktan sonra sahip hesabını oluşturun. Form, kimlik bilgileri girilmeden gösterilir.

Test edin ve yedeklemeyi planlayın

Gizli olmayan değerle elle tetiklenen akış çalıştırıp başarıyı doğrulayın. Günlükleri paylaşmadan hassas verileri gizleyin. Yükseltmeden önce birim, şifreleme anahtarı ve ayarları tutarlı yedekleyin; down -v kullanmayın. Genel webhook için güncel belgelere göre ayrı alan adı/TLS/reverse proxy gerekir. Hata aşmak için secure cookies kapatmayın.

VPS sunucunuz · Linux terminali

sudo docker compose logs --tail=50 n8n

Test için Manual Trigger ile Edit Fields (Set) düğümünü bağlayın. message (String) = GhostVPS tutorial check ve verified (Boolean) = true alanlarını ekleyin. Kaydedip Execute seçin; Edit Fields çıktısında iki değeri doğrulayın.

Edit Fields içinde message ve verified alanları
Edit Fields içinde gizli olmayan örnek mesajı ve verified mantıksal değerini ekleyin.
Manual Trigger ve Edit Fields ile başarılı n8n çalıştırması
Gerçek ve başarılı elle çalıştırma sonrasında iki düğümlü örnek.
Örnek mesaj ve true verified değeri içeren n8n çıktısı
Edit Fields gerçek çıktısı: örnek mesaj ve verified = true.

Resmî kaynaklar