File size: 2,234 Bytes
b9eb3bc
 
9438a57
 
 
b9eb3bc
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9438a57
 
b9eb3bc
 
 
 
9438a57
 
 
 
 
 
 
b9eb3bc
 
 
 
 
 
9438a57
 
b9eb3bc
 
 
 
 
 
9438a57
b9eb3bc
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# Kolay yol: kök dizindeki başlatıcılar (Baslat-Windows.bat, Baslat-macOS.command, baslat-linux.sh).
# Elle: docker compose --profile ollama up --build -d
# Proje adı sabit: zip başka bir klasöre açılsa da aynı konteynerler güncellenir (geçmiş birimi korunur)
name: llm-test-agent

services:
  # Bilgisayarda Ollama zaten kuruluysa başlatıcılar bu servisi atlar ve yereldeki Ollama'yı kullanır
  # (Windows/macOS'ta GPU hızlandırması için daha iyi).
  ollama:
    image: ollama/ollama:latest
    profiles: ["ollama"]
    ports: ["11434:11434"]
    volumes: [ollama:/root/.ollama]
    # NVIDIA GPU varsa aşağıdaki bloğu açın:
    # deploy:
    #   resources:
    #     reservations:
    #       devices: [{ driver: nvidia, count: all, capabilities: [gpu] }]

  app:
    build: .
    # Yalnızca bu bilgisayardan erişilir (bulut API anahtarları ağdaki başka cihazlara açılmaz)
    ports: ["127.0.0.1:8000:8000"]
    extra_hosts: ["host.docker.internal:host-gateway"]
    environment:
      OLLAMA_URL: ${OLLAMA_URL:-http://ollama:11434}
      OLLAMA_MODEL: ${OLLAMA_MODEL:-qwen2.5-coder:7b}
      OLLAMA_NUM_CTX: ${OLLAMA_NUM_CTX:-16384}
      # Boş = Ollama karar verir; 999 = tüm katmanları GPU'ya yüklemeye zorla
      OLLAMA_NUM_GPU: ${OLLAMA_NUM_GPU:-}
      # İsteğe bağlı bulut sağlayıcıları (anahtarlar arayüzdeki Bağlantılar penceresinden de girilebilir)
      OPENAI_API_KEY: ${OPENAI_API_KEY:-}
      OPENAI_BASE_URL: ${OPENAI_BASE_URL:-}
      ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY:-}
      SANDBOX_MODE: docker
      # Sandbox konteynerleri çalışma dosyalarını bu adlandırılmış birim üzerinden görür
      # (host yolu gerekmez; Windows, macOS ve Linux'ta aynı çalışır).
      WORK_ROOT: /work-root
      WORK_VOLUME: lta-work
      DATA_DIR: /data
      # Taşınabilir ayar dosyası: uygulama klasöründeki ayarlar/testajani-ayarlar.json
      SETTINGS_DIR: /config
      MAX_ITERATIONS: "4"
      COVERAGE_TARGET: "85"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - lta-work:/work-root
      - lta-store:/data
      - ./ayarlar:/config
    restart: unless-stopped

volumes:
  ollama:
  lta-work:
    name: lta-work
  lta-store: