# ThreatXtension Docker Compose Configuration # For BlackHat Arsenal 2026 Demo services: threatxtension: build: context: . dockerfile: Dockerfile container_name: threatxtension ports: - "8007:8007" volumes: # Persist downloaded extensions - ./extensions_storage:/app/extensions_storage # Persist SQLite database - ./data:/app/data environment: # LLM Configuration (OpenAI default) - LLM_PROVIDER=${LLM_PROVIDER:-openai} - LLM_MODEL=${LLM_MODEL:-gpt-4o} - OPENAI_API_KEY=${OPENAI_API_KEY} # Optional: VirusTotal integration - VIRUSTOTAL_API_KEY=${VIRUSTOTAL_API_KEY:-} # Storage paths (container paths) - EXTENSION_STORAGE_PATH=/app/extensions_storage - DATABASE_PATH=/app/data/threatxtension.db env_file: - .env restart: unless-stopped healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8007/health"] interval: 30s timeout: 10s retries: 3 start_period: 10s