services:
  agentic-poc:
    build:
      context: .
      dockerfile: Dockerfile.dev
    container_name: agentic_poc_dev
    ports:
      - "3000:3000"
    volumes:
      - .:/app
    # Käännetään aina käynnistyksen yhteydessä varmuuden vuoksi Wasm uusimmista koodeista, ja päälle pyöräytetään Hub!
    command: bash -c "cd node && wasm-pack build --release --target web --out-dir ../static/pkg && cd ../hub && cargo run"

  # Ollama — LLM-inferenssi
  # NVIDIA: vaihda image → ollama/ollama:latest ja lisää deploy.resources (ks. README)
  # CPU: vaihda image → ollama/ollama:latest ja poista devices
  ollama:
    image: ollama/ollama:rocm
    container_name: kipina_ollama
    ports:
      - "11434:11434"
    volumes:
      - ollama-models:/root/.ollama
    devices:
      - /dev/kfd
      - /dev/dri
    profiles:
      - native

  # Natiivisolmu — yhdistää hubiin ja käyttää Ollamaa inferenssiin
  native-node:
    build:
      context: .
      dockerfile: Dockerfile.native-node
    container_name: kipina_native_node
    environment:
      - HUB_URL=wss://kipina.studio/ws
      - OLLAMA_URL=http://ollama:11434
      - OLLAMA_MODEL=qwen2.5-coder:7b
      - ALLOCATED_GB=4
    depends_on:
      - ollama
    profiles:
      - native

volumes:
  ollama-models:
