Files
AlphaPulse/deploy/docker-compose.yml
T
eezd e840557d22 Add authenticated global economic calendar with Jin10 fallback
Collect macroeconomic releases, events and holidays through the official browser SDK with resumable history from 2025. Preserve evidence, revisions and observation times, and merge verified series with official fields taking priority.

Add category filters, field provenance, coverage and connection status. Verify calendar persistence and deployment recovery in isolated acceptance checks.
2026-10-31 12:57:14 +08:00

71 lines
1.9 KiB
YAML

# Run through scripts/deploy.py so every deployment shares the instance lock.
name: alphapulse-dev
x-backend: &backend
image: ${ALPHAPULSE_BACKEND_IMAGE:?Set a verified backend digest}
env_file: .env
restart: unless-stopped
stop_grace_period: 60s
networks: [dev_default]
services:
api:
<<: *backend
container_name: AlphaPulse-dev-api
command: [uvicorn, alphapulse.api.main:app, --host, 0.0.0.0, --port, "8000", --proxy-headers, --forwarded-allow-ips, "172.18.0.0/16"]
healthcheck:
test: [CMD, python, -c, "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8000/api/health', timeout=3)"]
interval: 5s
timeout: 4s
retries: 12
crawler:
<<: *backend
container_name: AlphaPulse-dev-crawler
command: [python, -m, alphapulse.crawler.manager]
market:
<<: *backend
container_name: AlphaPulse-dev-market
command: [python, -m, alphapulse.market.worker]
trader:
<<: *backend
container_name: AlphaPulse-dev-trader
command: [python, -m, alphapulse.trading.engine]
news-risk:
<<: *backend
container_name: AlphaPulse-dev-news-risk
command: [python, -m, alphapulse.news_risk.worker]
calendar:
<<: *backend
container_name: AlphaPulse-dev-calendar
command: [python, -m, alphapulse.calendar.worker]
jin10-calendar:
<<: *backend
container_name: AlphaPulse-dev-jin10-calendar
command: [python, -m, alphapulse.calendar.jin10_worker]
web:
image: ${ALPHAPULSE_WEB_IMAGE:?Set a verified web digest}
container_name: AlphaPulse-dev
restart: unless-stopped
depends_on:
api:
condition: service_healthy
healthcheck:
test: [CMD, wget, -q, -O, /dev/null, "http://127.0.0.1/api/health"]
interval: 5s
timeout: 4s
retries: 12
ports:
- 127.0.0.1:21005:80
networks: [dev_default]
networks:
dev_default:
external: true