Arama Yap Mesaj Senden
Rückruf anfordern
+90
X
X

Wählen Sie Ihre Währung

Türkische Lira $ US Dollar Euro
X
X

Wählen Sie Ihre Währung

Türkische Lira $ US Dollar Euro

Kontaktieren Sie uns

Standort Halkali Merkez Viertel Fatih Str. Ozgur Apt. No. 46, Kucukcekmece, Istanbul, 34303, TR

Open WebUI, Ollama und SearXNG: Private KI mit Websuche

Ollama, Open WebUI, SearXNG und Redis auf einem Ubuntu-GPU-Server bereitstellen und lokale Modelle mit kontrollierter Websuche, TLS, Sicherheit und Tests ergänzen.

Open WebUI, Ollama und SearXNG: Private KI mit Websuche
Was läuft am Ende dieser Anleitung?

Ollama, Open WebUI, SearXNG und Redis auf einem Ubuntu-GPU-Server bereitstellen und lokale Modelle mit kontrollierter Websuche, TLS, Sicherheit und Tests ergänzen. Beispiel-Domains, Passwörter und Secrets müssen vor der Ausführung durch eigene Werte ersetzt werden.

Architektur und Anforderungen vor der Installation

  • Ubuntu 24.04 LTS mit sudo-Zugriff und eigener IPv4-Adresse
  • Docker Engine und Compose v2 für containerbasierte Bereitstellungen
  • DNS-A-Record vom Anwendungsnamen auf den Server
  • NVMe-Kapazität für Daten, Logs, temporäre Dateien und Backups
  • CPU- und RAM-Reserve anhand gemessener Gleichzeitigkeit

DNS- und Portplan

  • 80/443 TCP: Open WebUI dış erişim
  • 11434/TCP: Ollama yalnız özel ağ/localhost
  • 8080/TCP: SearXNG yalnız Docker ağı
  • 6379/TCP: Redis yalnız Docker ağı

Praktische Installationsschritte

1. GPU doğrulama
nvidia-smi
lspci -nn | grep -Ei "3d|display|vga"
docker run --rm --gpus all nvidia/cuda:12.6.0-base-ubuntu24.04 nvidia-smi
2. Dizin ve sırlar
sudo mkdir -p /opt/eka-ai/searxng
cd /opt/eka-ai
openssl rand -hex 32
3. SearXNG ayarı
use_default_settings: true
server:
  secret_key: "GUCLU_RASTGELE_ANAHTAR"
  limiter: true
  image_proxy: true
search:
  safe_search: 1
  formats:
    - html
    - json
4. Compose yapısı
services:
  ollama:
    image: ollama/ollama:latest
    restart: unless-stopped
    volumes:
      - ollama_veri:/root/.ollama
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]
  redis:
    image: redis:7-alpine
    restart: unless-stopped
    command: redis-server --appendonly yes
    volumes:
      - redis_veri:/data
  searxng:
    image: searxng/searxng:latest
    restart: unless-stopped
    volumes:
      - ./searxng/settings.yml:/etc/searxng/settings.yml:ro
    depends_on:
      - redis
  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    restart: unless-stopped
    ports:
      - 127.0.0.1:3000:8080
    environment:
      OLLAMA_BASE_URL: http://ollama:11434
      ENABLE_WEB_SEARCH: "true"
      WEB_SEARCH_ENGINE: searxng
      SEARXNG_QUERY_URL: http://searxng:8080/search?q=<query>
    volumes:
      - openwebui_veri:/app/backend/data
    depends_on:
      - ollama
      - searxng
volumes:
  ollama_veri:
  redis_veri:
  openwebui_veri:
5. Başlatma ve model
sudo docker compose up -d
sudo docker compose exec ollama ollama pull qwen3:8b
sudo docker compose exec ollama ollama list
sudo docker compose ps
6. API testleri
curl -fsS http://127.0.0.1:3000/health
sudo docker compose exec searxng wget -qO- "http://127.0.0.1:8080/search?q=ubuntu&format=json" | head
sudo docker compose exec ollama ollama run qwen3:8b "Yalnızca TEST_OK yaz"
7. Log ve GPU izleme
watch -n 1 nvidia-smi
sudo docker compose logs -f --tail 100 open-webui searxng ollama
8. Nginx reverse proxy
sudo apt update
sudo apt install -y nginx certbot python3-certbot-nginx
sudo tee /etc/nginx/sites-available/ai.example.com > /dev/null <<'NGINX'
server {
    listen 80;
    listen [::]:80;
    server_name ai.example.com;
    client_max_body_size 10G;
    proxy_read_timeout 3600;
    proxy_send_timeout 3600;
    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_http_version 1.1;
        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_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}
NGINX
sudo ln -s /etc/nginx/sites-available/ai.example.com /etc/nginx/sites-enabled/ai.example.com
sudo nginx -t
sudo systemctl reload nginx
9. Let’s Encrypt SSL ve yenileme testi
sudo certbot --nginx -d ai.example.com --redirect --agree-tos --no-eff-email -m [email protected]
sudo certbot renew --dry-run
curl -I https://ai.example.com
openssl s_client -connect ai.example.com:443 -servername ai.example.com </dev/null 2>/dev/null | openssl x509 -noout -subject -issuer -dates

Wichtige Punkte vor dem Produktivbetrieb

Produktionshinweis
Open WebUI, Ollama und SearXNG muss hinter HTTPS isoliert werden; Datenbank, Queue und interne APIs dürfen nicht direkt im Internet veröffentlicht werden.
Produktionshinweis
Vor Produktion getestete Image-Versionen fixieren. Vor Migrationen Release Notes lesen und ein konsistentes Backup erstellen.
Produktionshinweis
Ein Datenbank-Dump allein kann unvollständig sein. Persistente Dateien, Konfiguration, Schlüssel und exakte Version gemeinsam sichern.
Produktionshinweis
Eine echte Transaktion testen, den Host neu starten und die automatische Wiederherstellung prüfen, bevor produktiver Traffic zugelassen wird.

Häufige Fehler und Ursachen

Belirti / SymptomKök neden ve çözüm / Root cause and fix
Dienst oder Container startet nichtCompose-Konfiguration, Abhängigkeiten, Dateirechte und die erste fatale Logzeile prüfen statt wiederholt neu zu starten.
Domain erreichbar, HTTPS fehlerhaftA/AAAA, Ports 80/443, Proxy-Modus, Zertifikatsprüfung und konkurrierende Reverse Proxies prüfen.
Datenbank oder Queue nicht erreichbarInternen Servicenamen und Credentials prüfen; Datenbankports nicht öffentlich freigeben.
Unter Last instabilRAM-Spitzen, Disk-Latenz, Connection Pools und Worker-Concurrency messen und den Engpass gezielt beheben.

Validierung nach der Installation

  • Alle Dienste laufen und Healthchecks sind erfolgreich
  • Hostname liefert ein gültiges HTTPS-Zertifikat
  • Nur erforderliche Ports sind erreichbar
  • MFA und Notfallzugriff für Administratoren sind eingerichtet
  • Backup-Prüfsummen wurden gespeichert
  • Restore in isolierter Umgebung wurde getestet
  • Keine wiederkehrenden kritischen Fehler in Logs
  • Dienste starten nach einem Host-Neustart automatisch

Offizielle technische Quellen

Passende EKA-Sunucu-Anleitungen

Häufig gestellte Fragen

Ist die Installation produktionsgeeignet?

Ja, nachdem Secrets ersetzt, Zugriffe begrenzt und ein vollständiger Restore erfolgreich getestet wurde.

Reichen Mindestressourcen?

Mindestwerte zeigen nur, dass Software startet. CPU, RAM, IOPS und Speicher anhand echter Last dimensionieren.

Kann Cloudflare verwendet werden?

Ja. Full (strict) TLS sowie Origin-Zertifikat, WebSockets und echte Client-IP korrekt konfigurieren.

Updates automatisch installieren?

Major Releases nicht automatisch installieren. Migrationen prüfen, Backup erstellen und altes Image bereithalten.

Was muss gesichert werden?

Datenbank, Uploads, Volumes, Konfiguration, Schlüssel und genaue Version gemeinsam sichern.

VPS oder GPU-Server?

NVMe-VPS passt für Web-Workloads; Inferenz, OCR-Beschleunigung und Transcoding können eine GPU benötigen.

Kontakt für die Bereitstellung

Ollama, Open WebUI, SearXNG und Redis auf einem Ubuntu-GPU-Server bereitstellen und lokale Modelle mit kontrollierter Websuche, TLS, Sicherheit und Tests ergänzen.

GPU-Server ansehenKontakt für die Bereitstellung
Top