n8n, Open WebUI ve AI uygulamaları#
Bu araçların bulut sürümleri kullanışlıdır, ta ki üç şeyden biri olana kadar: kotayı aşarsınız, fiyat kullandıkça artar, ya da işlediğiniz veriyi başkasının sunucusuna göndermek istemezsiniz.
Üçü de kendi sunucunuzda barındırarak çözülür. Bu sayfa nasıl yapılacağını anlatır.
En kısa yol: asistanınıza söyleyin
VeriTeknik MCP'yi yapay zeka asistanınıza (Claude, ChatGPT, Cursor...) bağladıysanız söylemeniz yeterli:
"n8n kurulu küçük bir sunucu aç, önce bana aylık tutarı söyle."
Asistanınız fiyatı gösterir, onayınızla sunucuyu n8n hazır kurulu olarak açar. Aynı yol Open WebUI, LibreChat, AnythingLLM, Flowise ve Activepieces için de geçerli; alan adını ve HTTPS'i de aynı sohbette isteyebilirsiniz. ChatGPT'de sunucu açma aracı yoktur; orada aşağıdaki panel yolunu kullanın. Hangi izinleri açacağınız Deploy Rehberi'nde.
Bir asistan kullanmıyorsanız bu uygulamaları panelden tek tıkla da kurabilirsiniz: sunucunuzu aldıktan sonra panelden uygulamayı seçmeniz yeterli.
Bu sayfa, listede olmayan bir şey kurmak istediğinizde ya da nasıl çalıştığını anlamak istediğinizde işinize yarar.
Ne kadar sunucu gerekir?#
| Uygulama | Minimum | Rahat |
|---|---|---|
| n8n (otomasyon) | 1 vCPU / 2 GB | 2 vCPU / 4 GB |
| Open WebUI (harici API ile) | 1 vCPU / 2 GB | 2 vCPU / 4 GB |
| Open WebUI + Ollama (yerel model) | 4 vCPU / 16 GB | GPU gerekir |
n8n kurulumu#
Compose ile kurmak en temizi. /opt/n8n/docker-compose.yml:
services:
n8n:
image: docker.n8n.io/n8nio/n8n:latest
restart: unless-stopped
ports:
- "127.0.0.1:5678:5678"
environment:
- N8N_HOST=n8n.example.com
- N8N_PORT=5678
- N8N_PROTOCOL=https
- WEBHOOK_URL=https://n8n.example.com/
- GENERIC_TIMEZONE=Europe/Istanbul
- N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY}
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
Şifreleme anahtarını üretin ve .env dosyasına koyun:
cd /opt/n8n
echo "N8N_ENCRYPTION_KEY=$(openssl rand -hex 32)" > .env
chmod 600 .env
docker compose up -d
N8N_ENCRYPTION_KEY'i kaybetmeyin
n8n, bağladığınız servislerin kimlik bilgilerini bu anahtarla şifreler. Anahtarı kaybederseniz kayıtlı tüm kimlik bilgileri okunamaz hale gelir ve hepsini yeniden girmeniz gerekir. Yedekleyin.
127.0.0.1:5678 bağlaması bilinçlidir - neden önemli olduğu Docker sayfasında.
Open WebUI kurulumu#
/opt/openwebui/docker-compose.yml:
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
restart: unless-stopped
ports:
- "127.0.0.1:8080:8080"
environment:
- OPENAI_API_BASE_URL=https://api.veriteknik.com/v1
- OPENAI_API_KEY=${OPENAI_API_KEY}
- WEBUI_SECRET_KEY=${WEBUI_SECRET_KEY}
volumes:
- openwebui_data:/app/backend/data
volumes:
openwebui_data:
cd /opt/openwebui
{
echo "OPENAI_API_KEY=sk-..."
echo "WEBUI_SECRET_KEY=$(openssl rand -hex 32)"
} > .env
chmod 600 .env
docker compose up -d
Alan adına bağlayın#
Her uygulama için bir alt alan adı kullanmak en temizi: n8n.example.com, chat.example.com.
DNS'te her biri için A kaydı açın, sonra Nginx:
server {
listen 80;
server_name n8n.example.com;
location / {
proxy_pass http://127.0.0.1:5678;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
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;
proxy_read_timeout 300s;
}
}
WebSocket ve uzun istekler
Upgrade / Connection başlıkları n8n'in canlı yürütme görünümü ve Open WebUI'nin akan yanıtları için zorunludur. proxy_read_timeout da uzatılmalı; varsayılan 60 saniye uzun bir AI yanıtını yarıda keser.
sudo nginx -t && sudo systemctl reload nginx
sudo certbot --nginx -d n8n.example.com
Bunları mutlaka yapın#
Kimlik doğrulamayı açın. İki uygulama da ilk açılışta yönetici hesabı oluşturmanızı ister. Bunu hemen yapın - kurup açık bırakılan bir n8n, internetteki herkesin sizin adınıza iş akışı çalıştırabileceği bir makinedir.
Yedek alın. Veri Docker volume'lerinde:
docker run --rm \
-v n8n_n8n_data:/data \
-v /opt/yedek:/yedek \
alpine tar czf /yedek/n8n-$(date +%F).tar.gz -C /data .
Panelden snapshot almak da bir seçenek ve daha kolay.
Güncel tutun. Bu projeler hızlı ilerliyor:
cd /opt/n8n && docker compose pull && docker compose up -d && docker image prune -f
Morpheus ile
"n8n'i güncelle ve eski imajları temizle"
"her ayın ilk günü n8n yedeği al ve bana bildir"
Kontrol listesi#
- [ ]
docker compose ps→Up - [ ]
sudo ss -tlnp→ uygulama portları yalnızca127.0.0.1 - [ ] Yönetici hesabı oluşturuldu, uygulama açık değil
- [ ]
https://n8n.example.comkilit simgesiyle açılıyor - [ ] Canlı yürütme / akan yanıt çalışıyor (WebSocket başlıkları doğru)
- [ ]
N8N_ENCRYPTION_KEYve.envdosyaları yedeklendi - [ ] Yedek alma yöntemi belirlendi ve bir kez test edildi