docker-compose.yml
Rama main · réplica de lectura del repositorio original.
services:
db:
image: pgvector/pgvector:pg16 # pgvector eklentisi HAZIR gelir
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: logs
ports:
- "5432:5432"
volumes:
- pgdata:/var/lib/postgresql/data
# Şema artık Postgres initdb'siyle değil, uygulamanın kendi migration runner'ıyla
# kurulur (app/db/migrations/) — her başlangıçta otomatik, mevcut DB'lerde de güvenli.
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres -d logs"]
interval: 5s
timeout: 3s
retries: 5
api:
build: .
depends_on:
db:
condition: service_healthy
ports:
- "8000:8000"
environment:
# DB, compose ağında "db" hostname'iyle erişilir
db_dsn: postgresql://postgres:postgres@db:5432/logs
embed_model: BAAI/bge-m3
embed_dim: "1024"
similarity_threshold: "0.88"
llm_provider: local
# KRİTİK: LM Studio HOST'ta çalışıyor, container ona böyle ulaşır
local_base_url: http://host.docker.internal:1234/v1
local_model: qwen2.5-7b-instruct
# Claude kullanacaksan: llm_provider=claude + anahtarı ver
anthropic_api_key: ""
claude_model: claude-sonnet-5
# NOT: bge-m3 modeli Dockerfile'da imaja gömülüdür (/models). Bu yüzden burada
# volume YOK — boş bir named volume gömülü modeli gölgeleyip runtime indirmeyi geri getirirdi.
extra_hosts:
# Linux'ta host.docker.internal'i çözebilmek için (Mac/Windows'ta gerekmez ama zararsız)
- "host.docker.internal:host-gateway"
volumes:
pgdata: