gaogaoGao Kaptan Docsv0.90.x
Örnekler

Ubuntu 24.04 ve Ollama

Ubuntu pod'unda herhangi bir uygulamayı (örnek: Ollama) kur, serve et ve relay üzerinden dışarı aç.

Ham bir ubuntu imajı ile Gao Kaptan üzerinde herhangi bir uygulamayı kurup dışarıya açabilirsin — burada örnek olarak Ollama'yı seçtik. Mantık her uygulama için aynıdır: uygulamanı kur, dinlediği portu relay ile dışarı aç, gerekirse token'la eriş. Bu örnekte bir Ubuntu pod'u açıyoruz, Ollama'yı elle kuruyoruz, 0.0.0.0'a serve ediyoruz, model indiriyoruz ve relay üzerinden istek atıyoruz. Komut çıktıları gerçek bir testten alınmıştır.

Relay'i oluşturma anında açabilirsin (aşağıdaki gibi), ama pod'u kapalı açtıysan sonradan da açabilirsin: pod detay → Networking → "Dış erişimi aç". Bu, pod'u yeniden başlatmadan Service + Ingress'i oluşturur (Kubernetes bunu destekler; relay :8888 üzerinden ingress-nginx'e ulaşır). Oluşturma sonrası ayrıca kaynak (CPU/RAM) de değiştirilebilir — ancak bellek değişikliği konteyneri yeniden başlatır ve konteyner içine kurduğunuz her şey silinir. CPU değişikliği başlatmaz — ama isteğe memory_limit eklerseniz, değeri aynı olsa bile bellek boyutlandırması sayılır ve yeniden başlatır. Belleği baştan yeterli verin.

İnternet erişimi (egress) AÇIK olmalı. Ollama kurulum scripti ve ollama pull internete çıkar; kapalıysa varsayılan-reddet ağ politikası apt/curl'ü engeller ve kurulum başarısız olur.

Ubuntu pod'unu oluştur

Pod Dağıtımı sayfasından şu ayarlarla bir pod oluştur:

  • İmaj: ubuntu:22.04
  • Komut: sleep infinity — ham ubuntu imajı uzun süre çalışan bir sürece sahip değildir; bu komut pod'u ayakta tutar ki içine bağlanıp kurulum yapabilesin.
  • Port: 11434 (Ollama API), dış erişim (relay): açık
  • İnternet erişimi: açık
  • Kaynak: 2 vCPU / 4 GB yeterli (CPU'da küçük modeller için)

GPU'da hızlı çıkarım istiyorsan bu pod'u bir MIG/GPU profiliyle aç. Bu örnek CPU üzerindedir — küçük modeller çalışır ama yavaştır.

Ubuntu pod'u çalışıyor — imaj ubuntu:22.04, durum Running

Bağımlılıkları ve Ollama'yı kur

Pod hazır olunca Terminal sekmesinden bağlan. ubuntu:22.04 minimaldir; önce curl, ca-certificates ve zstd gerekir (Ollama arşivi zstd ile açılır — eksikse kurulum This version requires zstd for extraction hatası verir):

apt-get update
apt-get install -y curl ca-certificates zstd
curl -fsSL https://ollama.com/install.sh | sh
ollama --version   # ollama version is 0.32.5

Serve et ve model indir

Pod'da systemd yoktur, bu yüzden Ollama'yı elle başlat. Dışarıdan erişilebilmesi için 127.0.0.1'e değil 0.0.0.0'a bind et:

# arka planda, pod'a bağlı kalmadan serve
setsid bash -c 'OLLAMA_HOST=0.0.0.0:11434 ollama serve > /var/log/ollama.log 2>&1' &

curl -s localhost:11434/api/version      # {"version":"0.32.5"}
ollama pull qwen2:0.5b                    # küçük, CPU-dostu model

Nerede çalıştığını doğrula

ollama ps
# NAME          ID              SIZE      PROCESSOR    CONTEXT    UNTIL
# qwen2:0.5b    6f48b936a09f    438 MB    100% CPU     4096       4 minutes from now

100% CPU ifadesi modelin CPU'da koştuğunu gösterir (GPU pod'unda burada GPU görünür).

Pod'un Terminal sekmesinden aynı komutları çalıştırıp doğrulayabilirsin — ollama list modeli, curl localhost:11434/api/version de çalışan API'yi gösterir:

Pod terminalinde Ollama: ollama list ve /api/version yanıtı

Relay üzerinden dışarıdan istek at

Pod detayındaki Erişim bölümünden bir API token üret. Pod'un ingress host'unun ilk etiketi kaptan_subdomain'dir (ör. ubuntu-ollama-c0f58fc3.kaptan.isnet.net.tr → ubuntu-ollama-c0f58fc3). Ardından relay üzerinden Ollama API'sine vur:

SUB="ubuntu-ollama-c0f58fc3"
TOK="<api_token>"
BASE="https://kptnpods.isnet.net.tr"

# sürüm
curl -s "$BASE/api/version?kaptan_subdomain=$SUB&kaptan_token=$TOK"
# {"version":"0.32.5"}

# üretim
curl -s -X POST "$BASE/api/generate?kaptan_subdomain=$SUB&kaptan_token=$TOK" \
  -H "Content-Type: application/json" \
  -d '{"model":"qwen2:0.5b","prompt":"Say hello in one short sentence.","stream":false}'
# {"model":"qwen2:0.5b","response":"HELLO THERE! What can I help you with today?","done":true,...}

Relay port-generic'tir: web_port'a (burada 11434) hangi yol gelirse pod'a iletir. Böylece Ollama'nın tüm REST API'si (/api/generate, /api/chat, /api/tags…) dışarıdan çalışır.

Özet

Ham ubuntu imajıyla bile Gao Kaptan üzerinde kendi yığınını kurabilirsin: pod'u sleep infinity ile ayakta tut, internet egress'i aç, bağımlılıkları (curl, zstd) kur, Ollama'yı 0.0.0.0'a serve et ve relay + API token ile dışarıdan tüket. Modelleri kalıcı tutmak için ~/.ollama (veya /root/.ollama) dizinine bir volume bağla.

Bu sayfa yardımcı oldu mu?

On this page