mirror of
https://github.com/Xe138/AI-Trader.git
synced 2026-04-02 09:37:23 -04:00
Add VOLUME_PATH environment variable to customize storage location for
all persistent data (data/, logs/, configs/ subdirectories).
Changes:
- .env.example: Add VOLUME_PATH variable with documentation
- docker-compose.yml: Use ${VOLUME_PATH:-.} for all volume mounts
- docs/DOCKER.md: Document custom volume location feature
Benefits:
- Store data outside project directory (e.g., on separate disk)
- Easier backup/restore (single directory)
- Clean separation of code and data
- Support for absolute or relative paths
Usage:
# In .env file
VOLUME_PATH=/home/user/trading-data
# Results in mounts:
/home/user/trading-data/data:/app/data
/home/user/trading-data/logs:/app/logs
/home/user/trading-data/configs:/app/configs
Defaults to current directory (.) if not set for backward compatibility.
39 lines
1.3 KiB
YAML
39 lines
1.3 KiB
YAML
services:
|
|
ai-trader:
|
|
image: ghcr.io/xe138/ai-trader:latest
|
|
# Uncomment to build locally instead of pulling:
|
|
# build: .
|
|
container_name: ai-trader-app
|
|
volumes:
|
|
- ${VOLUME_PATH:-.}/data:/app/data
|
|
- ${VOLUME_PATH:-.}/logs:/app/logs
|
|
- ${VOLUME_PATH:-.}/configs:/app/configs
|
|
environment:
|
|
# AI Model API Configuration
|
|
- OPENAI_API_BASE=${OPENAI_API_BASE}
|
|
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
|
|
|
# Data Source Configuration
|
|
- ALPHAADVANTAGE_API_KEY=${ALPHAADVANTAGE_API_KEY}
|
|
- JINA_API_KEY=${JINA_API_KEY}
|
|
|
|
# System Configuration
|
|
- RUNTIME_ENV_PATH=/app/data/runtime_env.json
|
|
|
|
# MCP Service Ports (fixed internally)
|
|
- MATH_HTTP_PORT=8000
|
|
- SEARCH_HTTP_PORT=8001
|
|
- TRADE_HTTP_PORT=8002
|
|
- GETPRICE_HTTP_PORT=8003
|
|
|
|
# Agent Configuration
|
|
- AGENT_MAX_STEP=${AGENT_MAX_STEP:-30}
|
|
ports:
|
|
# Format: "HOST:CONTAINER" - container ports are fixed, host ports configurable via .env
|
|
- "${MATH_HTTP_PORT:-8000}:8000"
|
|
- "${SEARCH_HTTP_PORT:-8001}:8001"
|
|
- "${TRADE_HTTP_PORT:-8002}:8002"
|
|
- "${GETPRICE_HTTP_PORT:-8003}:8003"
|
|
- "${WEB_HTTP_PORT:-8888}:8888"
|
|
restart: on-failure:3 # Restart max 3 times on failure, prevents endless loops
|