list_altİçindekilerexpand_more
Ollama’yı kurmak kolay. Her modeli terminalden ollama run <model> ile çağırmak, konuşma geçmişini takip etmek, PDF yükleyip soru sormak ise ciddi kullanımda yetersiz kalır. Open WebUI bu boşluğu kapatıyor: ChatGPT arayüzüne benzer bir tarayıcı deneyimi, tamamen yerel, verileriniz dışarı çıkmıyor.
Bu rehberde Open WebUI’yi Docker veya pip ile nasıl kuracağınızı, Ollama’ya nasıl bağlayacağınızı ve hangi özelliklerin gündelik kullanımda fark yarattığını somut adımlarla ele alacağız.
Ollama kurulumu ve yerel LLM’lere başlangıç için önce bu rehbere bakabilirsiniz.

Open WebUI Nedir?
Open WebUI, 2023’te Timothy Baek tarafından “Ollama WebUI” adıyla çıkmış, OpenAI API desteği de eklenince bugünkü adını almış açık kaynaklı bir web arayüzüdür. 2026 ortasında GitHub’da 90.000’den fazla yıldıza ulaştı ve yerel LLM arayüzleri arasında fiilen standart haline geldi.
Görünüm açısından ChatGPT’ye benziyor: sol kenar çubuğunda konuşma listesi, ortada sohbet ekranı, model seçici, dosya yükleme, sistem istemi yönetimi. Fark şu: tüm bunlar kendi makinenizde çalışıyor, hiçbir istek dış sunucuya gitmiyor.
Altında çalışan motor Ollama veya herhangi bir OpenAI-uyumlu API olabilir. vLLM, LiteLLM, llama.cpp tabanlı yerel sunucular, hatta GPT-4o ve Claude gibi bulut modelleri; hepsi aynı arayüzden yönetilebilir. Birden fazla model varsa konuşmalar arasında serbestçe geçiş yapılabiliyor.
Terminal neden yetmez?
ollama run llama3.2 komutuyla doğrudan konuşmak işe yarıyor, ancak ciddi kullanımda dar kalır:
- Konuşmalar oturumlar arasında korunmuyor
- Dosya veya görsel yüklenemiyor
- Farklı modelleri paralel karşılaştırmak mümkün değil
- Ekip paylaşımı, kullanıcı yönetimi yok
- Sistem istemini saklamak veya şablon oluşturmak için ayrıca düzenek kurulması gerekiyor
Open WebUI bu sorunların hepsini kutudan çıkan bir arayüzle çözüyor.
Kurulum Seçenekleri
İki ana yol var: Docker ve pip. Docker önerilen seçenek: bağımlılık çakışması yok, güncelleme tek komut, container izolasyonu sistem dosyalarına dokunmuyor. Pip ise Docker istemeyenler için veya mevcut Python ortamıyla sıkı entegrasyon gerektiğinde işe yarıyor.
Ortak gereksinimler:
- Ollama kurulu ve
ollama serveile çalışıyor olmalı (ya da başka bir OpenAI-uyumlu API) - 4 GB RAM minimum (modellerin ayrı bellek ihtiyacı buna ek)
- Güncel bir tarayıcı (Chrome, Firefox veya Safari son sürüm)
Docker için: Docker Desktop (Mac/Windows) veya Docker Engine + Compose (Linux)
Pip için: Python 3.11 ve üstü
Docker ile Kurulum
Ollama aynı makinede çalışıyorsa aşağıdaki tek komut yeterli:
docker run -d \
-p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
Komut ne yapıyor?
-d: container’ı arka planda başlatır-p 3000:8080: yerel 3000 portunu container’ın 8080 portuna bağlar--add-host=host.docker.internal:host-gateway: container’ın ana makineye (Ollama’ya) ulaşabilmesini sağlar-v open-webui:/app/backend/data: konuşma geçmişi ve ayarları kalıcı volume’de saklar--restart always: makine açılışında otomatik başlar
Komut çalıştıktan sonra tarayıcıdan http://localhost:3000 adresini açın. İlk açılışta yönetici hesabı oluşturma ekranı gelir.
Nvidia GPU varsa:
docker run -d \
-p 3000:8080 \
--gpus all \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:cuda
:cuda imajı CUDA sürücüleriniz mevcutsa GPU hızlandırmasını devreye sokar. CUDA kurulu olmayan sistemlerde :main imajını kullanın.
Güncelleme:
docker pull ghcr.io/open-webui/open-webui:main
docker stop open-webui && docker rm open-webui
# Yukarıdaki run komutunu tekrar çalıştırın
Volume silinmediği için konuşmalar ve ayarlar korunur.
Pip ile Kurulum
Docker olmadan kurmak isteyenler için:
pip install open-webui
open-webui serve
Varsayılan port 8080. Tarayıcıdan http://localhost:8080 adresine gidin.
Bağımlılık çakışmalarını önlemek için sanal ortam kullanmanızı öneririm:
python -m venv webui-env
source webui-env/bin/activate # Windows: webui-env\Scripts\activate
pip install open-webui
open-webui serve --port 3000
Güncelleme:
pip install --upgrade open-webui
Ollama Bağlantısı
Open WebUI varsayılan olarak http://localhost:11434 adresindeki Ollama’ya bağlanmaya çalışır. Ollama çalışıyorsa bağlantı otomatik kurulur.
Ollama’nın çalıştığını doğrulamak için:
ollama list
Hiç model yoksa Open WebUI içinden de model indirebilirsiniz: Settings → Models → Pull a model from Ollama.com. Terminalden de çekilebilir:
ollama pull llama3.2
ollama pull qwen2.5-coder:7b
ollama pull mistral
Model listesi Open WebUI’ye otomatik yansır. Sohbet ekranının sol üstündeki model seçiciden aktif modeli değiştirebilirsiniz.
Ollama farklı bir IP veya portta çalışıyorsa:
Settings → Connections → Ollama API URL alanına doğru adresi girin. Aynı ağdaki başka bir makinede çalışıyorsa http://192.168.1.100:11434 biçiminde.
Arayüz Özellikleri
Open WebUI’nin terminale göre asıl fark yarattığı noktalar:
Model geçişi. Aynı sohbette model değiştirilebilir. Bir soruya llama3.2 ile başlayıp yanıtı beğenmezseniz mistral ile devam edebilirsiniz. Model seçici konuşma üstünde her zaman görünür.
Belge yükleme. PDF, Word, metin dosyası veya web sayfası URL’si sohbete eklenebilir. Arayüz belgeyi bölümlere ayırır, yerel bir vektör veritabanında saklar ve sorularınızla ilgili bölümleri otomatik çeker. Bu yapı temel RAG akışının kullanıcı arayüzüne taşınmış halidir.
Sistem istemi şablonları. Sık kullandığınız rolleri kaydedin: “Kıdemli Python geliştiricisi olarak yanıtla”, “Teknik İngilizce metni Türkçeye çevir”. Model seçiminde şablonu da seçin, her konuşmayı sıfırdan ayarlamak zorunda kalmayın.
Görsel anlama. LLaVA, Qwen-VL veya Gemma gibi vision modelleri yüklendiğinde arayüz görsel yüklemeyi otomatik aktif eder. Ekran görüntüsü veya fotoğraf yükleyip model üzerinde analiz yaptırabilirsiniz.
Web arama entegrasyonu. Bağlı bir arama API’ı (Brave Search, SerpAPI vb.) tanımlandığında model gerçek zamanlı web araması yapabilir. Offline çalışan modele internet erişimi kazandıran pratik bir köprü.
Konuşma paylaşımı. Tek bir bağlantı oluşturup başkasıyla paylaşabilirsiniz. Özellikle ekip sunucusunda çalışan bir Open WebUI örneğinde anlamlı.
OpenAI API ve Diğer Servisler
Open WebUI Ollama ile sınırlı değil. GPT-4o, Groq, Together AI veya OpenAI-uyumlu herhangi bir API bağlanabilir.
Settings → Connections → OpenAI API bölümüne:
- API URL:
https://api.openai.com/v1 - API Key: OpenAI anahtarınız
Kaydedin. Model seçicide artık gpt-4o, gpt-4o-mini gibi seçenekler de görünür. Aynı arayüzden hem yerel Ollama modelleri hem bulut modelleri kullanılabiliyor. Hangi servisin ne kadar maliyete yol açtığını takip etmek isteyenler için LLM API maliyet karşılaştırması bu rehberde.
LiteLLM gibi proxy araçlar üzerinden Claude API da OpenAI-uyumlu modda bağlanabilir. Bu şekilde tek bir Open WebUI örneğinden hem yerel hem çoklu bulut modellerine erişilebilir.
Çok Kullanıcılı Kurulum
Open WebUI çok kullanıcılı çalışmayı destekliyor. Admin panelinden yeni kullanıcılar eklenip yetki seviyeleri belirlenebilir (Admin / Kullanıcı / Bekleyen).
Bir sunucuya kurulduğunda ekip üyeleri aynı örneğe farklı hesaplardan bağlanabilir. Her kullanıcının konuşma geçmişi ve ayarları ayrı tutuluyor, modeller ortak havuzdan seçiliyor.
Harici erişim için nginx ile ters proxy kurulumu:
server {
listen 443 ssl;
server_name llm.sirketiniz.com;
ssl_certificate /etc/letsencrypt/live/llm.sirketiniz.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/llm.sirketiniz.com/privkey.pem;
location / {
proxy_pass http://localhost:3000;
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;
}
}
Certbot ile ücretsiz Let’s Encrypt sertifikası edinip HTTPS üzerinden güvenli erişim kurabilirsiniz.
Sorun Giderme
“Could not connect to Ollama” hatası:
Docker içinden Ollama’ya ulaşmak için --add-host=host.docker.internal:host-gateway parametresi gerekir. Bu parametre eksikse container’ı durdurun, kaldırın ve komutu doğru parametreyle yeniden çalıştırın.
Ollama’nın tüm ağ arayüzlerini dinlediğinden de emin olun:
OLLAMA_HOST=0.0.0.0 ollama serve
Sistem servisi olarak çalışıyorsa /etc/systemd/system/ollama.service dosyasına şu satırı ekleyin:
[Service]
Environment="OLLAMA_HOST=0.0.0.0"
Port 3000 zaten kullanımda:
-p 3001:8080 şeklinde farklı bir dış port seçin ve tarayıcıdan http://localhost:3001 adresine gidin.
Model listesi görünmüyor:
Settings → Connections bölümünde Ollama API URL’sini kaydedip sayfayı yenileyin. Bazı durumlarda URL alanı dolu görünse de kaydetmek gerekiyor.
İlk admin hesabı oluşturulamadan uygulama kapandı:
docker volume rm open-webui
Volume’u silip container’ı yeniden başlatın. Kayıt ekranı tekrar gelir.
Belge yükleme çalışmıyor:
Settings → Documents bölümünden embedding modelini kontrol edin. Yerel embedding için nomic-embed-text gibi bir embedding modeli Ollama üzerinde yüklü olmalı. Olmadığı durumlarda OpenAI embedding API’ı kullanılabilir.
Motor Seçimi Nasıl Etkiler?
Open WebUI sadece Ollama ile çalışmak zorunda değil. Hangi yerel çalıştırma motorunu seçtiğinizden bağımsız olarak üste eklenen arayüz katmanı olarak çalışabilir.
Ollama, LM Studio ve Jan karşılaştırması için bu rehbere bakabilirsiniz. vLLM, llama.cpp sunucusu veya LiteLLM proxy gibi OpenAI-uyumlu endpoint sunan her araç Settings → Connections bölümünden tanımlanabilir.
Hangi Kurulum Yöntemini Seçmeli?
Docker ile pip arasında kalmak büyük çoğunluğun kafasını karıştırıyor. Karar aslında birkaç koşula bağlı.
Docker’ı seçin:
- Makine başka uygulamalar da çalıştırıyorsa (bağımlılık izolasyonu sorun çıkarmaz)
- Ekip kullanımı söz konusuysa (servis yönetimi ve güncelleme kolaylaşır)
- Linux sunucuya kuruyorsanız (systemd veya container orchestration’a uyum sağlar)
Pip’i seçin:
- Docker kurmak istemiyorsanız veya kurulum kısıtlıysa
- Python geliştirme ortamıyla sıkı entegrasyon gerekiyorsa
- Hızlı denemek, birkaç gün sonra silmek istiyorsanız
Tek kişi, kişisel bilgisayar: pip install open-webui && open-webui serve yeterli. Konuşmalar ~/.open-webui/ altında kalır; güncelleme tek komut.
Küçük ekip, paylaşımlı sunucu: Docker, nginx ters proxy ve Let’s Encrypt. Admin panelinden kullanıcı davet edip model kısıtlayabilir, şablon havuzu paylaşabilirsiniz. Üç ile beş kişilik bir geliştirici ekibi bu kurulumla aynı yerel modellere tek arayüzden ulaşır; her kullanıcının geçmişi ayrı tutulur.
Bilinen Kısıtlamalar
Güçlü yönleri kadar nerede zorlandığını bilmek de işe yarıyor:
Eş zamanlı VRAM baskısı: Birden fazla kullanıcı büyük bir modeli aynı anda sorgularsa VRAM veya RAM yetersizliği yaşanabilir. Ollama bir modeli bellekte tuttuğu sürece ikinci istek kuyruklanır; bu davranış yükü düzleştirir ama trafiğin artmasıyla yanıt gecikmesi de uzar.
Embedding gerektiren özellikler: Belge yükleme ve RAG akışı yerel bir embedding modeli gerektirir. nomic-embed-text gibi modelleri internet olmadan indiremezsiniz; bant dışı ortamlarda önceden çekmeniz şart.
Mobil tarayıcı: Masaüstü için tasarlanmış. Telefonda temel sohbet çalışıyor; yan paneller ve belge yönetimi dar ekranda tam uyum sağlamıyor.
Gerçek zamanlı işbirliği: Aynı konuşmada iki kullanıcı aynı anda yazamaz. Paylaşım salt okunur bağlantıyla sınırlı.
Bu sınırlılıklar bireysel ve küçük ekip kullanımında pratikte sorun çıkarmıyor. Onlarca kullanıcı aynı anda sorgular göndermeye başlarsa tablo değişir.



