45 lines
1.3 KiB
YAML
45 lines
1.3 KiB
YAML
# Local development with hot reloading
|
|
# Usage: docker compose -f docker-compose.dev.yml up --build
|
|
services:
|
|
backend:
|
|
build:
|
|
context: ..
|
|
dockerfile: app/backend/Dockerfile
|
|
command: ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000", "--reload"]
|
|
working_dir: /app/src
|
|
# No authentication; bound to loopback. The frontend reaches it over the compose network.
|
|
ports:
|
|
- "127.0.0.1:8001:8000"
|
|
environment:
|
|
- DB_PATH=/data
|
|
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}
|
|
- OPENAI_API_KEY=${OPENAI_API_KEY:-}
|
|
- OLLAMA_BASE_URL=${OLLAMA_BASE_URL:-http://host.docker.internal:11434}
|
|
- LOGFIRE_TOKEN=${LOGFIRE_TOKEN:-}
|
|
volumes:
|
|
- ${DB_PATH:-./data/haiku.rag.lancedb}:/data
|
|
- ./backend:/app/src:ro
|
|
- ./haiku.rag.yaml:/app/haiku.rag.yaml:ro
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
|
|
frontend:
|
|
build:
|
|
context: frontend
|
|
dockerfile: Dockerfile
|
|
target: base
|
|
command: sh -c "pnpm install && pnpm dev"
|
|
working_dir: /app
|
|
ports:
|
|
- "3000:3000"
|
|
environment:
|
|
- BACKEND_URL=http://backend:8000
|
|
- HOSTNAME=0.0.0.0
|
|
volumes:
|
|
- ./frontend:/app
|
|
- frontend_node_modules:/app/node_modules
|
|
depends_on:
|
|
- backend
|
|
|
|
volumes:
|
|
frontend_node_modules:
|