# Mr. Drew's Assignment Creator — run:  docker compose up -d   (from this folder)
#
# Works out of the box with Docker Desktop (macOS / Windows):
# the app reaches Ollama / LM Studio running on YOUR machine via
# host.docker.internal. On plain Linux, use docker-compose.linux.yml instead.
services:
  assignment-creator:
    build:
      context: ..
      dockerfile: docker/Dockerfile
    ports:
      - "3000:3000"
    environment:
      # Default provider URLs point at the Docker HOST (your machine).
      # You can always change them later on the app's Settings page.
      - OLLAMA_BASE_URL=http://host.docker.internal:11434
      - LMSTUDIO_BASE_URL=http://host.docker.internal:1234
    extra_hosts:
      # Makes host.docker.internal resolve on Linux engines too.
      - "host.docker.internal:host-gateway"
    volumes:
      # All assignments + settings live in one JSON file inside this volume.
      - assignment-data:/app/data
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "wget", "-q", "--spider", "http://localhost:3000/api/settings"]
      interval: 30s
      timeout: 5s
      retries: 3

volumes:
  assignment-data:
