Bu rehberde gerçek Ubuntu 24.04.4 LTS VPS üzerinde Ollama'yı Docker containerı olarak kurduk, qwen3:4b modelini yaklaşık 2.5 GB olarak indirdik, /api/chat üzerinden gerçek inference testi yaptık ve Ollama API'sini yalnız 127.0.0.1:11434 üzerinde tutarak public internete doğrudan açmadık.
Ubuntu 24.04.4 LTS
↓ Docker / eka-ai
Ollama :11434
↓
qwen3:4b
↓
Gerçek /api/chat testi
↓
127.0.0.1 ile güvenli local APIBu rehber gerçek Ubuntu 24.04.4 LTS VPS üzerinde Docker tabanlı Ollama kurulumunu belgeler. Amaç, qwen3:4b modelini sunucuda tamamen yerel olarak çalıştırmak ve API katmanını doğrudan internete açmadan kullanılabilir hale getirmektir.
Final yapıda Ollama containerı eka-ai Docker ağına bağlıdır, model dosyaları ollama_data named volume içinde kalıcıdır ve host API yalnız 127.0.0.1:11434 üzerinden dinler.
Ubuntu 24.04.4 LTS
↓
Docker / eka-ai
↓
Ollama :11434
↓
qwen3:4b
↓
127.0.0.1 local APITest VPS'imiz Ubuntu 24.04.4 LTS, 8 vCPU ve yaklaşık 31 GiB RAM ile çalışıyordu. Görünen işlemci AMD Ryzen 9 7950X tabanlıydı. NVIDIA sürücüsü ve ROCm compute aygıtı bulunmadığı için kurulumun ilk doğrulaması CPU modunda yapıldı.
Yerel modeller RAM ve disk tüketir. Model seçimini yalnız parametre sayısına göre değil, quantization, context, eşzamanlı kullanıcı ve işletim sistemi payını da hesaba katarak yapın.
cat /etc/os-release | grep -E 'PRETTY_NAME|VERSION_ID|VERSION_CODENAME'
uname -r
free -h
df -h /lscpu | grep -E 'Architecture|CPU\(s\)|Model name'
nvidia-smi 2>/dev/null || true
ls -la /dev/dri 2>/dev/null || trueOllama ve Open WebUI'ı Docker üzerinde çalıştırdığımız için önce Docker daemonını ve Compose eklentisini doğruladık. Gerçek testte Docker Engine 29.7.2 ve Docker Compose v5.4.0 aktifti.
Docker henüz kurulu değilse önce Ubuntu 24.04 Docker ve Portainer rehberindeki resmî Docker repository kurulumunu tamamlayabilirsiniz.
docker --version
docker compose version
systemctl is-active dockerOllama ile Open WebUI'ın birbirini container adıyla bulabilmesi için özel bridge ağı olarak eka-ai oluşturduk. Ollama modellerinin container yeniden oluşturulduğunda kaybolmaması için ollama_data named volume kullandık.
Bu ayrım önemlidir: container silinebilir veya image güncellenebilir; model dosyaları named volume içinde kalır. Volume silme işlemlerini yedek almadan uygulamayın.
docker network inspect eka-ai >/dev/null 2>&1 || docker network create eka-ai
docker volume create ollama_datadocker network inspect eka-ai --format 'Ag={{.Name}} Driver={{.Driver}} Scope={{.Scope}}'
docker volume inspect ollama_dataTestte GPU passthrough algılanmadığı için resmî Ollama Docker image'ını CPU modunda çalıştırdık. Host tarafındaki 11434 portunu 0.0.0.0 yerine 127.0.0.1'e bağladık; böylece Ollama API'si doğrudan internete yayınlanmadı.
Container aynı zamanda eka-ai ağına bağlandı. Bu sayede ileride Open WebUI, hostun private adresini bilmeden ollama:11434 üzerinden API'ye erişebilir.
docker pull ollama/ollama:latestdocker run -d --name ollama --restart unless-stopped --network eka-ai -p 127.0.0.1:11434:11434 -v ollama_data:/root/.ollama ollama/ollama:latestdocker ps --filter name='^/ollama$'
curl -sS http://127.0.0.1:11434/api/tagsOllama ayağa kalktıktan sonra qwen3:4b modelini container içine indirdik. Gerçek API çıktısında model yaklaşık 2.5 GB depolama kullanıyor, 4.0B parameter_size ve Q4_K_M quantization bilgisiyle listeleniyordu.
Model indirme süresi disk, hat ve Ollama registry erişimine göre değişir. Pull işlemi tamamlanmadan Open WebUI tarafında model seçimi yapmaya çalışmayın.
docker exec ollama ollama pull qwen3:4bdocker exec ollama ollama list
curl -sS http://127.0.0.1:11434/api/tagsModelin listede görünmesi tek başına inference'ın çalıştığını kanıtlamaz. Bu nedenle /api/chat endpointine gerçek bir mesaj gönderdik ve qwen3:4b'nin beklenen metni ürettiğini doğruladık.
CPU testinde model aktifken Ollama yaklaşık 3 GiB RAM kullanıyor ve çalışan model 100% CPU olarak görünüyordu. Bu değerler yalnız bizim test anımıza aittir; prompt ve context büyüdükçe tüketim değişir.
curl -sS http://127.0.0.1:11434/api/chat -d '{"model":"qwen3:4b","messages":[{"role":"user","content":"Sadece EKA-OLLAMA-TEST-BASARILI yaz."}],"stream":false}'docker exec ollama ollama ps
docker stats --no-stream ollamaGerçek inference sonrasında qwen3:4b CPU üzerinde yüklüydü ve Ollama containerı yaklaşık 3 GiB bellek kullanıyordu. Bu değer model, context ve eşzamanlı isteklere göre değişebilir.
En önemli final kontrolü 11434 portunun yalnız 127.0.0.1 üzerinde dinlediğini doğrulamaktır. Böylece Ollama API'si sunucunun public interface'lerine doğrudan açılmaz.
docker exec ollama ollama ps
docker stats --no-stream ollamass -lntp | grep ':11434'
docker network inspect eka-ai --format '{{range .Containers}}Ag={{$.Name}} IP={{.IPv4Address}}{{end}}'Evet. Bu gerçek testte Ollama Ubuntu 24.04.4 LTS üzerinde ollama/ollama image'ı ile Docker containerı olarak çalıştı.
Hayır. Test ortamında GPU passthrough yoktu ve qwen3:4b CPU modunda çalıştı. GPU kullanımı inference hızını artırabilir.
Gerçek ollama list çıktısında qwen3:4b yaklaşık 2.5 GB olarak görünüyordu.
Gerçek API metadata'sında parameter_size 4.0B ve quantization_level Q4_K_M olarak döndü.
Varsayılan API portu 11434'tür. Bu kurulumda host tarafında yalnız 127.0.0.1:11434 kullanıldı.
Varsayılan yerel API'yi doğrudan public internete açmak yerine reverse proxy, kimlik doğrulama veya private ağ katmanı kullanmak daha güvenlidir.
Container içindeki Ollama CLI ile docker exec ollama ollama pull qwen3:4b komutu kullanıldı.
docker exec ollama ollama list veya http://127.0.0.1:11434/api/tags endpointi kullanılabilir.
/api/chat endpointine qwen3:4b modeliyle POST isteği gönderildi ve beklenen EKA-OLLAMA-TEST-BASARILI yanıtı alındı.
Model yüklüyken gerçek testte Ollama containerı yaklaşık 3.06 GiB bellek kullanıyordu.
ollama_data named volume korunursa model dosyaları containerdan bağımsız kalır. Volume silinirse model verileri de silinebilir.
Aynı user-defined Docker ağına bağlı servisler container adı üzerinden http://ollama:11434 adresini kullanabilir.
Sunucunun RAM, disk ve varsa GPU kapasitesi uygunsa qwen3 ailesinin daha büyük modelleri kullanılabilir.
Port bindleri, volume yedekleri, Docker restart policy, sistem kaynakları ve Ollama API erişim politikasını doğrulayın.
Qwen3, Ollama, Open WebUI ve n8n gibi self-hosted AI servislerini kendi altyapınızda çalıştırmak için EKA Sunucu Linux VPS paketlerini inceleyebilirsiniz.
Güncellendi: 10.08.2026