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
Ubuntu 24.04 Open WebUI Installation: Ollama, Nginx, SSL und Domain
Open WebUI, Ollama, Docker und Ubuntu 24.04

Open WebUI unter Ubuntu 24.04 mit Ollama, Qwen3, Nginx und SSL installieren

In diesem realen Ubuntu-24.04.4-LTS-VPS-Setup wurde Open WebUI mit Docker installiert, das persistente Volume openwebui_data und WEBUI_SECRET_KEY vorbereitet, die Anwendung nur an 127.0.0.1:3000 gebunden, über das gemeinsame Docker-Netz eka-ai mit Ollama unter http://ollama:11434 verbunden und openwebui.ekasunucu.com mit Nginx und Let’s Encrypt HTTPS veröffentlicht. Die Anleitung verwendet echte Screenshots vom ersten Health-Warten bis zum Administrator-Konto und qwen3:4b-Chat.

Ubuntu 24.04Open WebUIOllamaQwen3qwen3:4bDockerNginxLet’s EncryptSSLSelf Hosted AILokale KILinux VPSEKA Sunucu
Ollama / Qwen3 / Open WebUI / Ubuntu 24.04
Ubuntu 24.04.4 LTS
   ↓ Docker / eka-ai
Open WebUI :8080
   ↓ 127.0.0.1:3000
   ↓
Ollama :11434 → qwen3:4b
   ↓
Nginx + Let’s Encrypt :443
   ↓
openwebui.ekasunucu.com
Ollama0.32.6Open WebUI0.11.0 test
13echte WebP-Screenshots
3TR · EN · DE Inhalt
443öffentliches HTTPS
127.0.0.1KI-Dienste Loopback
01Open WebUI mit Docker
02Ollama + qwen3:4b Integration
03Nginx + Let’s Encrypt HTTPS
043000/11434 nur localhost
00
Inhaltsverzeichnis

Installationsschritte für Open WebUI unter Ubuntu 24.04

  1. 01DNS, persistentes Volume und stabilen Secret Key vorbereiten
  2. 02Open WebUI an eka-ai anbinden und nur auf localhost Port 3000 veröffentlichen
  3. 03Logs beobachten, wenn Health nicht sofort HTTP 200 liefert
  4. 04Ollama und qwen3:4b aus dem Open-WebUI-Container prüfen
  5. 05openwebui.ekasunucu.com auf localhost Port 3000 reverse-proxien
  6. 06Let's-Encrypt-Zertifikat ausstellen und Domain auf HTTPS umstellen
  7. 07Ports 3000 und 11434 auf localhost belassen und nur Nginx 80/443 veröffentlichen
  8. 08Certbot Renewal, Container-Health und fehlgeschlagene Dienste prüfen
  9. 09Open-WebUI-Willkommensseite über den HTTPS-Hostnamen öffnen
  10. 10Erstes Open-WebUI-Administratorkonto erstellen
  11. 11qwen3:4b in Open WebUI auswählen und lokalen Chat starten
  12. 12Volumes sichern, Images kontrolliert aktualisieren und nach Reboot testen
01
Open-WebUI-Vorbereitung

DNS, persistentes Volume und stabilen Secret Key vorbereiten

Wir richteten openwebui.ekasunucu.com auf den Test-VPS und prüften die DNS-Auflösung. Für Anwendungsdaten wurde das Named Volume openwebui_data erstellt.

Zusätzlich wurde ein WEBUI_SECRET_KEY erzeugt. In Produktion sollte dieser Wert sicher in einer geschützten Datei oder einem Secret Manager gespeichert und bei Container-Neuerstellung wiederverwendet werden.

Befehl 1
dig +short openwebui.ekasunucu.com @1.1.1.1
dig +short openwebui.ekasunucu.com @8.8.8.8
Befehl 2
docker volume create openwebui_data
Befehl 3
umask 077
[ -s /root/.openwebui_secret_key ] || openssl rand -hex 32 > /root/.openwebui_secret_key
WEBUI_SECRET_KEY="$(cat /root/.openwebui_secret_key)"
02
Open WebUI Docker

Open WebUI an eka-ai anbinden und nur auf localhost Port 3000 veröffentlichen

Im realen Test kam ghcr.io/open-webui/open-webui:main zum Einsatz. Host-Port 3000 wurde auf 127.0.0.1 begrenzt, intern blieb Port 8080 und openwebui_data wurde nach /app/backend/data gemountet.

Da Ollama dasselbe Netzwerk eka-ai nutzt, setzten wir OLLAMA_BASE_URL auf http://ollama:11434. Docker-DNS löst den Containernamen auf, ohne Ollama öffentlich zu veröffentlichen.

Befehl 1
docker pull ghcr.io/open-webui/open-webui:main
Befehl 2
WEBUI_SECRET_KEY="$(cat /root/.openwebui_secret_key)"
docker run -d --name open-webui --restart unless-stopped --network eka-ai -p 127.0.0.1:3000:8080 -e OLLAMA_BASE_URL=http://ollama:11434 -e WEBUI_SECRET_KEY="$WEBUI_SECRET_KEY" -v openwebui_data:/app/backend/data ghcr.io/open-webui/open-webui:main
Befehl 3
docker ps --filter name='^/open-webui$'
03
Erste Startphase

Logs beobachten, wenn Health nicht sofort HTTP 200 liefert

Beim ersten Start kann Open WebUI Datenbankmigrationen ausführen und lokale Hilfsmodelle vorbereiten. In unserem Test erschienen zunächst connection reset und HTTP 000, obwohl der Container-Prozess bereits lief.

Nach Abschluss der Migrationen und dem Laden des Embedding-Modells lieferte /health HTTP 200 mit {"status":true}. Während dieser Initialisierung ist Log-Beobachtung sinnvoller als wiederholtes Löschen und Neuerstellen des Containers.

Befehl 1
docker logs -f --tail 150 open-webui
Befehl 2
until [ "$(curl -s -o /dev/null -w '%{http_code}' http://127.0.0.1:3000/health || true)" = "200" ]; do sleep 5; done
curl -sS http://127.0.0.1:3000/health
Befehl 3
docker inspect open-webui --format 'Status={{.State.Status}} Health={{if .State.Health}}{{.State.Health.Status}}{{else}}none{{end}}'
04
Modellverbindung

Ollama und qwen3:4b aus dem Open-WebUI-Container prüfen

Ein erfolgreicher Ollama-Test auf dem Host reicht nicht; auch der Open-WebUI-Container muss die API erreichen. Im gemeinsamen Docker-Netzwerk lautet das Ziel ollama:11434.

Open WebUI bezieht die Modellliste über diese Verbindung. Fehlt qwen3:4b, prüfen Sie zuerst /api/tags in Ollama, dann die Connection-Einstellung und die Mitgliedschaft beider Container in eka-ai.

Befehl 1
docker exec open-webui python -c "import urllib.request; print(urllib.request.urlopen('http://ollama:11434/api/tags').read().decode())"
Befehl 2
docker network inspect eka-ai --format '{{range .Containers}}{{.Name}} {{.IPv4Address}}{{println}}{{end}}'
05
Nginx + WebSocket

openwebui.ekasunucu.com auf localhost Port 3000 reverse-proxien

Statt den Open-WebUI-Hostport ins Internet zu veröffentlichen, wurde Nginx zum öffentlichen Einstieg. Nginx lauscht auf 80/443, leitet an 127.0.0.1:3000 weiter und erhält die WebSocket-Upgrade-Header.

Verwenden Sie den korrekten server_name und führen Sie vor jedem Reload nginx -t aus.

Befehl 1
cat >/etc/nginx/sites-available/openwebui.ekasunucu.com <<'EOF'
server {
    listen 80;
    listen [::]:80;
    server_name openwebui.ekasunucu.com;

    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";
        proxy_read_timeout 3600;
    }
}
EOF
ln -sfn /etc/nginx/sites-available/openwebui.ekasunucu.com /etc/nginx/sites-enabled/openwebui.ekasunucu.com
nginx -t
systemctl reload nginx
06
HTTPS-Veröffentlichung

Let's-Encrypt-Zertifikat ausstellen und Domain auf HTTPS umstellen

Nachdem der Nginx-Reverse-Proxy bereit war, stellte Certbot erfolgreich ein Let's-Encrypt-Zertifikat für openwebui.ekasunucu.com aus und integrierte es in Nginx.

Sowohl Origin-HTTPS als auch die öffentliche Domain lieferten im finalen Test HTTP 200. Benutzer greifen damit über den sicheren Hostnamen statt über einen Docker-Port zu.

Befehl 1
certbot --nginx -d openwebui.ekasunucu.com
Befehl 2
curl -I https://openwebui.ekasunucu.com
Befehl 3
certbot certificates
07
Angriffsfläche reduzieren

Ports 3000 und 11434 auf localhost belassen und nur Nginx 80/443 veröffentlichen

Am Ende lauschte Ollama auf 127.0.0.1:11434 und Open WebUI auf 127.0.0.1:3000; Nginx war öffentlich auf 80 und 443 erreichbar. Dadurch wird die rohe Ollama-API nicht direkt ins Internet gestellt.

Docker-Portpublishing kann Firewall-Regeln beeinflussen. Prüfen Sie daher tatsächliche Sockets mit ss und veröffentlichte Containerports zusätzlich mit docker ps.

Befehl 1
ss -lntp | grep -E ':80 |:443 |:3000 |:11434' || true
Befehl 2
docker ps --format 'table {{.Names}}\t{{.Image}}\t{{.Status}}\t{{.Ports}}'
08
Finaler Infrastrukturtest

Certbot Renewal, Container-Health und fehlgeschlagene Dienste prüfen

Wir führten certbot renew --dry-run aus, statt automatische Erneuerung nur anzunehmen. Die simulierten Renewals für Open WebUI und Portainer waren erfolgreich.

Im finalen Zustand war Open WebUI healthy, Ollama lief, die HTTPS-Domain antwortete mit 200 und systemctl --failed meldete keine fehlgeschlagenen Units.

Befehl 1
certbot renew --dry-run
Befehl 2
curl -sS -o /dev/null -w '%{http_code}\n' https://openwebui.ekasunucu.com
Befehl 3
docker ps --format 'table {{.Names}}\t{{.Status}}\t{{.Ports}}'
systemctl --failed
09
Erster Browserzugriff

Open-WebUI-Willkommensseite über den HTTPS-Hostnamen öffnen

Nach Abschluss der Infrastruktur öffneten wir https://openwebui.ekasunucu.com und erreichten die Open-WebUI-Willkommensseite. Über den Start-Button ging es zur Kontoeinrichtung.

Der Browser sollte direkt den Hostnamen verwenden. Öffentlicher Zugriff auf Port 3000 ist nicht erforderlich, da Nginx und TLS den Benutzerverkehr übernehmen.

10
Erster Benutzer

Erstes Open-WebUI-Administratorkonto erstellen

Auf der ersten Registrierungsseite legten wir den Administrator mit Name, E-Mail und starkem Kennwort an. Das erste Konto erhält Zugriff auf die Administration.

Verwenden Sie in Produktion ein eindeutiges Kennwort und prüfen Sie die Registrierungs- und Freigaberichtlinie, bevor weitere Benutzer zugelassen werden.

11
Lokale KI bereit

qwen3:4b in Open WebUI auswählen und lokalen Chat starten

Nach der Kontoeinrichtung stand qwen3:4b in der Modellauswahl von Open WebUI bereit. Damit war die Kette Browser → Open WebUI → Ollama → qwen3:4b vollständig funktionsfähig.

Die Inferenz läuft auf der Ollama-Seite des Servers; Open WebUI stellt Oberfläche, Benutzer- und Gesprächsebene bereit. Für größere Modelle oder mehr parallele Nutzer müssen CPU/RAM/GPU erneut dimensioniert werden.

12
Produktionswartung

Volumes sichern, Images kontrolliert aktualisieren und nach Reboot testen

Ollama-Modelldaten liegen in ollama_data, Open-WebUI-Anwendungsdaten in openwebui_data. VPS-Snapshot und Volume-Backups vor Updates erleichtern ein Rollback.

Der reale Test nutzte :main. Dokumentieren oder pinnen Sie für Produktion die Image-Version, sichern Sie Daten, erstellen Sie Container bewusst neu und prüfen Sie danach /health, Ollama /api/tags, HTTPS, lokale Port-Bindings und Autostart nach einem Reboot.

Befehl 1
docker run --rm -v ollama_data:/quelle -v /root:/backup alpine sh -c 'tar czf /backup/ollama_data-$(date +%F).tar.gz -C /quelle .'
Befehl 2
docker run --rm -v openwebui_data:/quelle -v /root:/backup alpine sh -c 'tar czf /backup/openwebui_data-$(date +%F).tar.gz -C /quelle .'
Befehl 3
docker restart ollama open-webui
curl -sS http://127.0.0.1:3000/health
curl -sS http://127.0.0.1:11434/api/tags
Production checklist

Open-WebUI-Sicherheitscheck für Produktion

Open-WebUI-Port 3000 nicht direkt öffentlich veröffentlichen.
Ollama-Port 11434 auf localhost oder im privaten Docker-Netz halten.
WEBUI_SECRET_KEY sicher und persistent speichern.
Das Volume openwebui_data regelmäßig sichern.
Ein starkes eindeutiges Administratorkennwort verwenden.
Öffentlichen Zugriff über Nginx HTTPS bereitstellen und WebSocket-Header erhalten.
Certbot-Renewal und renew --dry-run regelmäßig prüfen.
Vor Image-Updates VPS-Snapshot oder Rollback-Plan erstellen.
Nach Reboot /health, Ollama-Verbindung, HTTPS und Port-Bindings erneut prüfen.
R
Offizielle Quellen

Offizielle Open-WebUI- und Ollama-Quellen

+
EKA Sunucu

Verwandte EKA-Sunucu-Open-WebUI-, Ollama- und n8n-Ratgeber

?
FAQ

Häufige Fragen zu Open WebUI unter Ubuntu 24.04

Läuft Open WebUI unter Ubuntu 24.04 mit Docker?

Ja. Im realen Test lief Open WebUI v0.11.0 unter Ubuntu 24.04.4 LTS in Docker.

Welchen Port verwendet Open WebUI?

Der Container nutzt 8080; hostseitig wird die Anwendung nur an 127.0.0.1:3000 gebunden.

Welche URL verbindet Open WebUI mit Ollama?

Da beide Container im Netzwerk eka-ai liegen, wird http://ollama:11434 verwendet.

Sollte Ollama-Port 11434 öffentlich sein?

Nein. Im Test blieb er lokal und die Container-Kommunikation lief über das Docker-Netzwerk.

Warum kann Open WebUI beim ersten Start unhealthy sein?

Datenbankmigrationen und die Vorbereitung des Embedding-Modells können dauern. Im realen Test gab es zuerst HTTP 000/Connection Reset und später /health 200.

Welches Embedding-Modell wurde geladen?

Die realen Logs zeigten den Download von sentence-transformers/all-MiniLM-L6-v2 über Hugging Face.

Wofür ist WEBUI_SECRET_KEY?

Es ist ein persistentes Secret für Anwendung und Sessions und sollte bei einer Container-Neuerstellung gleich bleiben.

Wo werden Open-WebUI-Daten gespeichert?

Das Named Volume openwebui_data wird nach /app/backend/data gemountet.

Braucht Open WebUI WebSocket-Unterstützung hinter Nginx?

Ja. HTTP/1.1 sowie Upgrade- und Connection-Header sollten weitergereicht werden.

Wie wurde SSL installiert?

Nach dem Nginx-vHost holte Certbot --nginx das Let’s-Encrypt-Zertifikat und deployte es.

Wie prüfe ich SSL-Renewal?

Mit certbot renew --dry-run kann die Verlängerung simuliert werden.

Ist das erste Open-WebUI-Konto Administrator?

Das erste Konto dient als Administrator; spätere Registrierung und Freigaben lassen sich im Panel steuern.

Wie erscheint qwen3:4b in Open WebUI?

Bei funktionierender Ollama-Verbindung erscheint qwen3:4b in der Modellauswahl des Chat-Interfaces.

Sollte :main in Produktion verwendet werden?

Der reale Test nutzte :main. Ein getesteter fester Versions-Tag ist für kontrollierte Produktionsupdates meist vorhersehbarer.

EKA YAZILIM VE BİLİŞİM SİSTEMLERİ

Linux VPS für Open WebUI und lokale KI gesucht?

Ollama, Qwen3, Open WebUI und n8n auf einem eigenen EKA-Sunucu-Linux-VPS betreiben.

Aktualisiert: 10.08.2026
Linux-VPS-Pakete ansehenLinux- & VPS-Ratgeber
Top