77 lines
1.6 KiB
YAML
77 lines
1.6 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
trading-agents:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: orbiquant-trading-agents
|
|
restart: unless-stopped
|
|
|
|
environment:
|
|
# Service
|
|
- SERVICE_NAME=trading-agents
|
|
- ENVIRONMENT=${ENVIRONMENT:-development}
|
|
- LOG_LEVEL=${LOG_LEVEL:-INFO}
|
|
|
|
# Database
|
|
- DATABASE_URL=postgresql+asyncpg://${POSTGRES_USER:-orbiquant}:${POSTGRES_PASSWORD:-dev_password}@database:5432/${POSTGRES_DB:-orbiquant}
|
|
|
|
# Binance API
|
|
- BINANCE_API_KEY=${BINANCE_API_KEY:-}
|
|
- BINANCE_API_SECRET=${BINANCE_API_SECRET:-}
|
|
- BINANCE_TESTNET=${BINANCE_TESTNET:-true}
|
|
|
|
# ML Engine
|
|
- ML_ENGINE_URL=${ML_ENGINE_URL:-http://ml-engine:3083}
|
|
- ML_ENGINE_API_KEY=${ML_ENGINE_API_KEY:-dev_ml_key}
|
|
|
|
# Redis (for caching and pub/sub)
|
|
- REDIS_URL=redis://redis:6379/0
|
|
|
|
# API
|
|
- API_PORT=3086
|
|
- API_HOST=0.0.0.0
|
|
|
|
ports:
|
|
- "3086:3086"
|
|
|
|
volumes:
|
|
- ./src:/app/src
|
|
- ./config:/app/config
|
|
- ./logs:/app/logs
|
|
|
|
depends_on:
|
|
- database
|
|
- redis
|
|
|
|
networks:
|
|
- orbiquant-network
|
|
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://localhost:3086/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 40s
|
|
|
|
# Redis for caching and messaging
|
|
redis:
|
|
image: redis:7-alpine
|
|
container_name: orbiquant-redis
|
|
restart: unless-stopped
|
|
ports:
|
|
- "6379:6379"
|
|
volumes:
|
|
- redis-data:/data
|
|
networks:
|
|
- orbiquant-network
|
|
command: redis-server --appendonly yes
|
|
|
|
networks:
|
|
orbiquant-network:
|
|
external: true
|
|
|
|
volumes:
|
|
redis-data:
|