initial commit
This commit is contained in:
62
docker-compose.yml
Normal file
62
docker-compose.yml
Normal file
@@ -0,0 +1,62 @@
|
||||
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:-60}
|
||||
MYSQL_HOST: mysql
|
||||
MYSQL_PORT: 3306
|
||||
MYSQL_USER: ${MYSQL_USER:-airwatcher}
|
||||
MYSQL_PASSWORD: ${MYSQL_PASSWORD:-airwatcher}
|
||||
MYSQL_DATABASE: ${MYSQL_DATABASE:-airwatcher}
|
||||
OPENAI_API_KEY: ${OPENAI_API_KEY:-}
|
||||
OPENAI_MODEL: ${OPENAI_MODEL:-gpt-4.1-mini}
|
||||
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:-}
|
||||
depends_on:
|
||||
mysql:
|
||||
condition: service_healthy
|
||||
|
||||
mysql:
|
||||
image: mysql:8.4
|
||||
restart: unless-stopped
|
||||
command: --default-authentication-plugin=mysql_native_password
|
||||
ports:
|
||||
- "${MYSQL_PORT_HOST:-3306}:3306"
|
||||
environment:
|
||||
MYSQL_DATABASE: ${MYSQL_DATABASE:-airwatcher}
|
||||
MYSQL_USER: ${MYSQL_USER:-airwatcher}
|
||||
MYSQL_PASSWORD: ${MYSQL_PASSWORD:-airwatcher}
|
||||
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-root}
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- mysqladmin ping -h 127.0.0.1 -uroot -p$$MYSQL_ROOT_PASSWORD || exit 1
|
||||
interval: 5s
|
||||
timeout: 3s
|
||||
retries: 20
|
||||
volumes:
|
||||
- mysql_data:/var/lib/mysql
|
||||
|
||||
volumes:
|
||||
mysql_data:
|
||||
Reference in New Issue
Block a user