Files
ThreatHunt/docker-compose.yml

77 lines
2.0 KiB
YAML

version: "3.8"
services:
backend:
build:
context: .
dockerfile: Dockerfile.backend
container_name: threathunt-backend
ports:
- "8000:8000"
environment:
# Agent provider configuration
# Set one of these to enable the agent:
# THREAT_HUNT_AGENT_PROVIDER=local
# THREAT_HUNT_LOCAL_MODEL_PATH=/models/model.gguf
#
# THREAT_HUNT_AGENT_PROVIDER=networked
# THREAT_HUNT_NETWORKED_ENDPOINT=http://inference-service:5000
# THREAT_HUNT_NETWORKED_KEY=your-api-key
#
# THREAT_HUNT_AGENT_PROVIDER=online
# THREAT_HUNT_ONLINE_API_KEY=sk-your-openai-key
# THREAT_HUNT_ONLINE_MODEL=gpt-3.5-turbo
# Auto-detect available provider (tries local -> networked -> online)
THREAT_HUNT_AGENT_PROVIDER: auto
# Optional agent settings
THREAT_HUNT_AGENT_MAX_TOKENS: "1024"
THREAT_HUNT_AGENT_REASONING: "true"
THREAT_HUNT_AGENT_HISTORY_LENGTH: "10"
THREAT_HUNT_AGENT_FILTER_SENSITIVE: "true"
volumes:
# Optional: Mount local models for local provider
# - ./models:/models:ro
- ./backend:/app
depends_on:
- frontend
networks:
- threathunt
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/api/agent/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 10s
frontend:
build:
context: .
dockerfile: Dockerfile.frontend
container_name: threathunt-frontend
ports:
- "3000:3000"
environment:
# API endpoint configuration
REACT_APP_API_URL: http://localhost:8000
networks:
- threathunt
healthcheck:
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:3000/"]
interval: 30s
timeout: 10s
retries: 3
start_period: 10s
networks:
threathunt:
driver: bridge
volumes:
# Optional: Persistent storage for models or data
# models:
# driver: local
# data:
# driver: local