ChatGPT ist praktisch. Aber: Jeder Prompt geht an OpenAI-Server, kostet Geld, und du weißt nie genau, was mit deinen Daten passiert.
Ich zeig dir, wie du in 10 Minuten deine eigene KI-Chat-Oberfläche aufsetzt – komplett lokal, ohne Cloud, ohne Kosten.
Was du bekommst
- Ollama – LLM-Server, der Modelle wie Llama, Mistral oder Gemma lokal ausführt
- Open WebUI – ChatGPT-ähnliche Oberfläche im Browser
- Alle Daten bleiben auf deinem Rechner – keine API-Kosten, keine Datenschutz-Bedenken
Hardware-Check
Bevor du loslegst, hier die ehrliche Einschätzung:
| Konfiguration | RAM | GPU | Geeignete Modelle |
|---|---|---|---|
| Minimal | 8 GB | – | gemma2:2b, llama3.2:1b, phi4-mini |
| Empfohlen | 16 GB | – | llama3.2:3b, mistral:7b, gemma2:9b |
| Komfortabel | 16+ GB | 8 GB VRAM | llama3.1:8b, qwen2.5:7b |
| Power | 32 GB | 12+ GB VRAM | llama3.3:70b, deepseek-r1:32b |
GPU optional, aber empfohlen: Ohne GPU läuft alles über die CPU – funktioniert, ist aber langsamer. NVIDIA (CUDA), AMD (ROCm) und Apple Silicon (Metal) werden unterstützt.
Meine Empfehlung für Einsteiger: llama3.2:3b – gute Balance zwischen Qualität und Geschwindigkeit, läuft auf den meisten Rechnern flüssig.
Voraussetzungen
- Docker installiert (Docker auf Ubuntu 24.04)
- 10 GB freier Speicherplatz (für Images + ein Modell)
- Terminal-Grundkenntnisse
Setup mit Docker Compose
Schritt 1: Projektordner erstellen
# Ordner anlegen und wechseln
mkdir -p ~/docker/ollama-webui && cd ~/docker/ollama-webui
Schritt 2: Docker Compose Datei erstellen
nano docker-compose.yml
Füge folgenden Inhalt ein:
services:
ollama:
image: ollama/ollama:latest
container_name: ollama
ports:
- "11434:11434"
volumes:
- ollama_data:/root/.ollama
restart: unless-stopped
# GPU-Support aktivieren (optional, nur mit NVIDIA GPU)
# deploy:
# resources:
# reservations:
# devices:
# - driver: nvidia
# count: 1
# capabilities: [gpu]
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
ports:
- "3000:8080"
environment:
- OLLAMA_BASE_URL=http://ollama:11434
- WEBUI_SECRET_KEY=dein-geheimer-schluessel-hier-aendern
volumes:
- openwebui_data:/app/backend/data
depends_on:
- ollama
restart: unless-stopped
volumes:
ollama_data:
openwebui_data:
Wichtig: Ändere WEBUI_SECRET_KEY zu einem eigenen Wert. Sonst wirst du nach jedem Container-Neustart ausgeloggt.
Schritt 3: Container starten
# Container im Hintergrund starten
docker compose up -d
Erster Start dauert 2-5 Minuten – Docker lädt ca. 4 GB an Images herunter.
Schritt 4: Erstes LLM-Modell laden
# Modell herunterladen (ca. 2 GB)
docker exec -it ollama ollama pull llama3.2:3b
Alternativ kleinere Modelle für schwächere Hardware:
# Nur 1.6 GB, läuft auf fast allem
docker exec -it ollama ollama pull gemma2:2b
# Microsofts kompaktes Modell
docker exec -it ollama ollama pull phi4-mini
Schritt 5: Open WebUI öffnen
- Browser öffnen:
http://localhost:3000 - Account erstellen (erster User wird Admin)
- Oben links Modell auswählen (llama3.2:3b)
- Loslegen
GPU-Support aktivieren
NVIDIA GPU (Linux)
# NVIDIA Container Toolkit installieren
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey \
| sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -fsSL https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list \
| sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' \
| sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt update && sudo apt install -y nvidia-container-toolkit
sudo systemctl restart docker
Dann in docker-compose.yml den GPU-Block einkommentieren (die Zeilen mit deploy: bis capabilities).
Apple Silicon (M1/M2/M3/M4)
Docker Desktop auf Mac unterstützt keine GPU-Passthrough. Für beste Performance Ollama direkt auf dem Mac installieren:
# Homebrew Installation
brew install ollama
# Ollama starten
ollama serve
Open WebUI dann mit geänderter OLLAMA_BASE_URL starten:
environment:
- OLLAMA_BASE_URL=http://host.docker.internal:11434
AMD GPU (Linux)
# ROCm-Image verwenden
docker run -d --device /dev/kfd --device /dev/dri \
-v ollama:/root/.ollama -p 11434:11434 \
--name ollama ollama/ollama:rocm
Modell-Empfehlungen
| Modell | Größe | Stärken | Für wen |
|---|---|---|---|
llama3.2:3b | 2 GB | Allrounder, schnell | Einsteiger, schwache Hardware |
llama3.1:8b | 4.7 GB | Beste Qualität/Größe-Ratio | Empfohlen mit GPU |
mistral:7b | 4.1 GB | Schnell, gute Antworten | Täglicher Gebrauch |
gemma2:9b | 5.4 GB | Google-Qualität | Faktenwissen |
deepseek-coder-v2:16b | 8.9 GB | Code-Spezialist | Entwickler |
qwen2.5:14b | 9 GB | Mehrsprachig, lange Kontexte | Texte, Übersetzungen |
Modell wechseln:
# Neues Modell laden
docker exec -it ollama ollama pull mistral:7b
# Nicht mehr gebrauchte Modelle löschen
docker exec -it ollama ollama rm gemma2:2b
Nützliche Befehle
# Status prüfen
docker compose ps
# Logs anzeigen
docker compose logs -f
# Installierte Modelle auflisten
docker exec -it ollama ollama list
# Modell direkt im Terminal testen
docker exec -it ollama ollama run llama3.2:3b
# Alles stoppen
docker compose down
# Komplett löschen (inkl. Modelle!)
docker compose down -v
Fehlerbehebung
”Connection refused” beim Öffnen von Open WebUI
Warte 1-2 Minuten nach dem Start. Open WebUI braucht Zeit zum Initialisieren.
# Container-Status prüfen
docker compose ps
# Logs checken
docker compose logs open-webui
Modell lädt nicht / “Out of Memory”
Dein RAM reicht nicht für das gewählte Modell. Wechsle zu einem kleineren:
docker exec -it ollama ollama pull gemma2:2b
Langsame Antworten
Ohne GPU ist das normal. Optionen:
- Kleineres Modell verwenden
- GPU-Support aktivieren
- Quantisierte Versionen nutzen (z.B.
llama3.2:3b-q4_0)
Container startet nicht nach Reboot
Prüfe ob Docker automatisch startet:
sudo systemctl enable docker
Warum lokal statt Cloud?
| Aspekt | ChatGPT (Cloud) | Ollama (Lokal) |
|---|---|---|
| Datenschutz | Daten gehen an OpenAI | Alles bleibt bei dir |
| Kosten | $20/Monat (Plus) | 0€ nach Setup |
| Internet | Erforderlich | Funktioniert offline |
| Geschwindigkeit | Abhängig von Servern | Abhängig von Hardware |
| Modellauswahl | GPT-4, GPT-4o | 100+ Open-Source Modelle |
Bonus: Ollama API nutzen
Ollama läuft auf Port 11434 und bietet eine REST-API:
# Direkte Anfrage an die API
curl http://localhost:11434/api/generate -d '{
"model": "llama3.2:3b",
"prompt": "Erkläre Docker in einem Satz",
"stream": false
}'
Das ermöglicht Integration in eigene Scripts, n8n-Workflows oder andere Tools.
Nächste Schritte
- Weitere Modelle testen – Jedes Modell hat Stärken. Probier
deepseek-coder-v2für Code oderqwen2.5für längere Texte - n8n Integration – Verbinde Ollama mit deinen Automatisierungs-Workflows (n8n Self-Hosted Setup)
- Fine-Tuning erkunden – Ollama unterstützt Modelfiles für eigene System-Prompts und Parameter-Anpassungen
Fragen oder Probleme? Schreib mir auf LinkedIn oder per E-Mail.