algorithmic_trading / docker-compose.yml
Edwin Salguero
Add comprehensive Docker integration with multi-environment support, monitoring, and deployment tools
6cd35fc
version: '3.8'
services:
# Main trading system
trading-system:
build: .
container_name: algorithmic-trading
ports:
- "8000:8000"
volumes:
- ./data:/app/data
- ./logs:/app/logs
- ./models:/app/models
- ./config.yaml:/app/config.yaml:ro
environment:
- PYTHONPATH=/app
- LOG_LEVEL=INFO
command: ["python", "-m", "agentic_ai_system.main", "--mode", "live", "--duration", "300"]
restart: unless-stopped
healthcheck:
test: ["CMD", "python", "-c", "import sys; sys.exit(0)"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
# FinRL training service
finrl-training:
build: .
container_name: finrl-training
volumes:
- ./data:/app/data
- ./logs:/app/logs
- ./models:/app/models
- ./config.yaml:/app/config.yaml:ro
environment:
- PYTHONPATH=/app
- LOG_LEVEL=INFO
command: ["python", "finrl_demo.py"]
restart: "no"
depends_on:
- trading-system
# Backtesting service
backtesting:
build: .
container_name: backtesting
volumes:
- ./data:/app/data
- ./logs:/app/logs
- ./config.yaml:/app/config.yaml:ro
environment:
- PYTHONPATH=/app
- LOG_LEVEL=INFO
command: ["python", "-m", "agentic_ai_system.main", "--mode", "backtest", "--start-date", "2024-01-01", "--end-date", "2024-12-31"]
restart: "no"
depends_on:
- trading-system
# Development service with Jupyter
development:
build: .
container_name: trading-dev
ports:
- "8888:8888"
volumes:
- ./data:/app/data
- ./logs:/app/logs
- ./models:/app/models
- ./config.yaml:/app/config.yaml:ro
- .:/app
environment:
- PYTHONPATH=/app
- LOG_LEVEL=DEBUG
command: ["jupyter", "lab", "--ip=0.0.0.0", "--port=8888", "--no-browser", "--allow-root", "--NotebookApp.token=''"]
restart: unless-stopped
volumes:
data:
logs:
models: