Files
air-watcher/docker-compose.yml
2026-03-05 11:00:45 +09:00

46 lines
2.0 KiB
YAML

services:
app:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
ports:
- "${APP_PORT:-3000}:3000"
environment:
DASHBOARD_HOST: 0.0.0.0
DASHBOARD_PORT: 3000
DASHBOARD_DB: ${DASHBOARD_DB:-mysql}
DASHBOARD_POLL_INTERVAL_SEC: ${DASHBOARD_POLL_INTERVAL_SEC:-3600}
DASHBOARD_REQUIRE_AUTH: ${DASHBOARD_REQUIRE_AUTH:-true}
DASHBOARD_API_TOKEN: ${DASHBOARD_API_TOKEN:-}
DASHBOARD_USERS: ${DASHBOARD_USERS:-}
DASHBOARD_ADMIN_USERS: ${DASHBOARD_ADMIN_USERS:-}
DASHBOARD_SESSION_TTL_SEC: ${DASHBOARD_SESSION_TTL_SEC:-604800}
DASHBOARD_ALLOW_MEMORY_FALLBACK: ${DASHBOARD_ALLOW_MEMORY_FALLBACK:-false}
DASHBOARD_DB_SCHEMA: ${DASHBOARD_DB_SCHEMA:-playground}
DASHBOARD_PROJECT_KEY: ${DASHBOARD_PROJECT_KEY:-air-watcher}
MYSQL_URL: ${MYSQL_URL:-}
MYSQL_HOST: ${MYSQL_HOST:-}
MYSQL_PORT: ${MYSQL_PORT:-3306}
MYSQL_USER: ${MYSQL_USER:-}
MYSQL_PASSWORD: ${MYSQL_PASSWORD:-}
MYSQL_DATABASE: ${MYSQL_DATABASE:-}
OPENAI_API_KEY: ${OPENAI_API_KEY:-}
OPENAI_MODEL: ${OPENAI_MODEL:-gpt-4.1-mini}
LLM_REQUEST_TIMEOUT_MS: ${LLM_REQUEST_TIMEOUT_MS:-20000}
CRAWLER_ENDPOINT: ${CRAWLER_ENDPOINT:-}
CRAWLER_PROVIDERS: ${CRAWLER_PROVIDERS:-}
CRAWLER_ENDPOINT_SKYSCANNER: ${CRAWLER_ENDPOINT_SKYSCANNER:-}
CRAWLER_ENDPOINT_NAVER: ${CRAWLER_ENDPOINT_NAVER:-}
CRAWLER_ENDPOINT_GOOGLE: ${CRAWLER_ENDPOINT_GOOGLE:-}
CRAWLER_ROUTING_STRATEGY: ${CRAWLER_ROUTING_STRATEGY:-priorityFallback}
CRAWLER_REQUEST_TIMEOUT_MS: ${CRAWLER_REQUEST_TIMEOUT_MS:-15000}
CRAWLER_MAX_ATTEMPTS: ${CRAWLER_MAX_ATTEMPTS:-2}
CRAWLER_RETRY_BASE_DELAY_MS: ${CRAWLER_RETRY_BASE_DELAY_MS:-300}
CRAWLER_RETRY_MAX_DELAY_MS: ${CRAWLER_RETRY_MAX_DELAY_MS:-3000}
NOTIFY_CHANNEL: ${NOTIFY_CHANNEL:-console}
TELEGRAM_BOT_TOKEN: ${TELEGRAM_BOT_TOKEN:-}
TELEGRAM_CHAT_ID: ${TELEGRAM_CHAT_ID:-}
TELEGRAM_API_BASE: ${TELEGRAM_API_BASE:-https://api.telegram.org}
NOTIFY_WEBHOOK_URL: ${NOTIFY_WEBHOOK_URL:-}