Veri Bilimi Okulu

n8n'i Docker ile Lokalinizde Çalıştırma: Adım Adım Kurulum Rehberi
n8n’i Docker ile Lokalinizde Çalıştırma: Adım Adım Kurulum Rehberi
n8nlokaldocker

Loading

n8n’in ne olduğunu ve neden tercih edildiğini daha önce ele almıştık. Bu yazıda teoriyi bir kenara bırakıp doğrudan işin pratiğine giriyoruz: n8n’i kendi bilgisayarınızda Docker ile nasıl çalıştırırsınız?

n8n’i lokalinizde çalıştırmanın en pratik yolu Docker’dır. Node.js ile doğrudan kurmak da mümkündür, ama bu durumda sürüm çakışmaları, sistem bağımlılıkları ve “bende çalışıyordu” sorunlarıyla uğraşırsınız. Docker ile n8n, tüm bağımlılıklarıyla birlikte izole bir kutuda çalışır; bilgisayarınıza hiçbir şey kurulmaz, işiniz bittiğinde container’ı silmeniz yeterlidir.

Ön Gereksinimler

Başlamadan önce bilgisayarınızda Docker Desktop kurulu ve çalışır durumda olmalı. Kurulumu kontrol etmek için terminalde şunu çalıştırın:

docker --version

Bir sürüm numarası görüyorsanız hazırsınız demektir.

Yöntem 1: Tek Komutla Hızlı Deneme

Sadece n8n’e göz atmak, arayüzü keşfetmek istiyorsanız tek satır yeterli:

docker run -it --rm --name n8n -p 5678:5678 n8nio/n8n

Komut çalıştıktan sonra tarayıcınızdan http://localhost:5678 adresine gidin, n8n arayüzünü karşınızda bulacaksınız.

Dikkat: Bu kurulumda –rm bayrağı var, yani container’ı durdurduğunuzda içindeki her şey (oluşturduğunuz workflow’lar, bağladığınız hesaplar) silinir. Bu yöntem sadece “bir bakayım” demek için uygundur, ciddi bir çalışma için bir sonraki yönteme geçin.

Yöntem 2: Kalıcı Kurulum (Docker Compose)

Gerçekten üzerinde çalışacağınız bir kurulum istiyorsanız verilerin kalıcı olması gerekir. Bunun için bir docker-compose.yml dosyası oluşturun:

services:
  n8n:
    image: n8nio/n8n
    container_name: n8n
    restart: unless-stopped
    ports:
      - "5678:5678"
    environment:
      - GENERIC_TIMEZONE=Europe/Istanbul
      - TZ=Europe/Istanbul
      - N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY}
    volumes:
      - n8n_data:/home/node/.n8n

volumes:
  n8n_data:

Burada N8N_ENCRYPTION_KEY değerini bilerek dosyanın dışında, bir .env dosyasında tutuyoruz. Bu key, n8n’in kaydettiğiniz credential’ları (API anahtarları, şifreler) şifrelemek için kullandığı anahtardır, rastgele ve tahmin edilemez olmalı. Aynı klasörde bir .env dosyası oluşturun:

echo "N8N_ENCRYPTION_KEY=$(openssl rand -hex 32)" > .env

Bu komut sizin için güvenli, rastgele bir anahtar üretip .env dosyasına yazar. Bu dosyayı asla Git’e commit etmeyin veya paylaşmayın, kaydettiğiniz tüm credential’ların güvenliği bu anahtara bağlı.

Şimdi kurulumu ayağa kaldırın:

docker compose up -d

http://localhost:5678 adresinden n8n’e ulaşabilir, ilk kullanıcı hesabınızı oluşturabilirsiniz. Bu sefer container’ı durdurup tekrar başlatsanız da (docker compose stop / docker compose up -d) verileriniz kalıcı volume’de saklandığı için kaybolmaz.

İlk Workflow’unuzu Oluşturun

Kurulum bittiğine göre n8n’in nasıl çalıştığını test etmek için basit bir workflow deneyin:

  1. Sol üstten “New workflow” ile boş bir çalışma alanı açın.
  2. Manual Trigger node’unu ekleyin — workflow’u elle tetiklemenizi sağlar.
  3. Yanına bir Edit Fields (Set) node’u ekleyip basit bir metin alanı tanımlayın, örneğin mesaj = "Merhaba n8n".
  4. İki node’u birbirine bağlayın ve Execute Workflow butonuna tıklayın.

Sağ tarafta çıktının aktığını göreceksiniz. Bu, n8n’de her workflow’un temel mantığıdır: bir tetikleyici (trigger), onu takip eden işlem adımları (node’lar) ve aralarındaki veri akışı.

Container’ı Yönetmek

Sık kullanacağınız komutlar:

docker compose logs -f n8n     # Canlı logları izle
docker compose stop            # Durdur (veriler kalır)
docker compose up -d           # Tekrar başlat
docker compose pull && docker compose up -d   # Güncel n8n sürümüne geç

Sık Karşılaşılan Sorunlar

Container’ı silip yeniden oluşturduğunuzda her şey sıfırlanıyorsa: Volume tanımını kontrol edin; docker compose down -v komutu volume’leri de siler, docker compose down silmez.

Port zaten kullanımda hatası: Bilgisayarınızda 5678 portunda başka bir servis çalışıyor olabilir. docker-compose.yml içindeki port eşlemesini "5679:5678" gibi değiştirip http://localhost:5679 üzerinden erişebilirsiniz.

Google/Microsoft gibi servislerle OAuth bağlantısı kurmak istiyorsanız: localhost adresleri OAuth sağlayıcıları tarafından genellikle kabul edilmez, redirect URI hatası alırsınız. Bu, tamamen ayrı bir konu, gerçek bir domain ve HTTPS gerektirir. Bunu ileride ele alacağız.

Sırada Ne Var?

Bu kurulum, n8n’i tanımak ve kişisel/küçük ölçekli otomasyonlar için gayet yeterli. Ama gerçek dünyada herkesin erişebileceği bir sunucuda, kalabalık ekiplerle, yüksek işlem hacimlerinde işler biraz daha karmaşıklaşıyor. Kalıcı veritabanı seçimi, HTTPS ve domain yönetimi, queue mode ile ölçeklendirme, güvenlik gibi konular devreye giriyor.

Bu ileri seviye konuları ve n8n ile üretim seviyesinde AI Agent’lar geliştirmeyi n8n AI Agent Developer Bootcamp‘imizin 5. haftasında uçtan uca, uygulamalı olarak anlatıyoruz. Merak edenler bootcamp sayfamızdan detaylara ulaşabilir.

0

Bir yanıt yazın