# Docker Environment Configuration # This file contains environment variables used by Docker Compose # ============================================================================= # CONTAINER NETWORK SETTINGS # ============================================================================= COMPOSE_PROJECT_NAME=stock-bot NETWORK_NAME=trading-bot-network # ============================================================================= # DATABASE CONTAINER SETTINGS # ============================================================================= # PostgreSQL Container POSTGRES_DB=trading_bot POSTGRES_USER=trading_user POSTGRES_PASSWORD=trading_pass_secure POSTGRES_INITDB_ARGS=--encoding=UTF-8 # MongoDB Container MONGO_INITDB_ROOT_USERNAME=trading_admin MONGO_INITDB_ROOT_PASSWORD=trading_mongo_secure MONGO_INITDB_DATABASE=trading_documents # QuestDB Container QDB_TELEMETRY_ENABLED=false # Dragonfly Container DRAGONFLY_MAXMEMORY=4gb DRAGONFLY_PROACTOR_THREADS=8 # ============================================================================= # MONITORING CONTAINER SETTINGS # ============================================================================= # Grafana Container GF_SECURITY_ADMIN_USER=admin GF_SECURITY_ADMIN_PASSWORD=secure_grafana_password GF_USERS_ALLOW_SIGN_UP=false GF_PATHS_PROVISIONING=/etc/grafana/provisioning GF_DISABLE_GRAVATAR=true # Prometheus Container PROMETHEUS_CONFIG_FILE=/etc/prometheus/prometheus.yml PROMETHEUS_STORAGE_PATH=/prometheus PROMETHEUS_WEB_ENABLE_LIFECYCLE=true # ============================================================================= # ADMIN INTERFACE CONTAINER SETTINGS # ============================================================================= # PgAdmin Container PGADMIN_DEFAULT_EMAIL=admin@tradingbot.local PGADMIN_DEFAULT_PASSWORD=secure_pgadmin_password PGADMIN_CONFIG_SERVER_MODE=False PGADMIN_DISABLE_POSTFIX=true # Mongo Express Container ME_CONFIG_MONGODB_ADMINUSERNAME=trading_admin ME_CONFIG_MONGODB_ADMINPASSWORD=trading_mongo_secure ME_CONFIG_MONGODB_SERVER=mongodb ME_CONFIG_MONGODB_PORT=27017 ME_CONFIG_BASICAUTH_USERNAME=admin ME_CONFIG_BASICAUTH_PASSWORD=secure_mongo_express_password # Redis Insight Container REDIS_HOSTS=local:dragonfly:6379 # ============================================================================= # VOLUME MOUNT PATHS # ============================================================================= # Data Volume Paths (adjust these for your host system) POSTGRES_DATA_PATH=./data/postgres QUESTDB_DATA_PATH=./data/questdb MONGODB_DATA_PATH=./data/mongodb DRAGONFLY_DATA_PATH=./data/dragonfly PROMETHEUS_DATA_PATH=./data/prometheus GRAFANA_DATA_PATH=./data/grafana LOKI_DATA_PATH=./data/loki PGADMIN_DATA_PATH=./data/pgadmin # Config Volume Paths PROMETHEUS_CONFIG_PATH=./monitoring/prometheus GRAFANA_CONFIG_PATH=./monitoring/grafana LOKI_CONFIG_PATH=./monitoring/loki # Database Init Paths POSTGRES_INIT_PATH=./database/postgres/init MONGODB_INIT_PATH=./database/mongodb/init # ============================================================================= # PORT MAPPINGS (HOST:CONTAINER) # ============================================================================= # Database Ports POSTGRES_PORT=5432 QUESTDB_HTTP_PORT=9000 QUESTDB_PG_PORT=8812 QUESTDB_INFLUX_PORT=9009 MONGODB_PORT=27017 DRAGONFLY_PORT=6379 # Monitoring Ports PROMETHEUS_PORT=9090 GRAFANA_PORT=3000 LOKI_PORT=3100 # Admin Interface Ports PGADMIN_PORT=8080 MONGO_EXPRESS_PORT=8081 REDIS_INSIGHT_PORT=8001 # ============================================================================= # HEALTH CHECK SETTINGS # ============================================================================= # Health Check Intervals HEALTHCHECK_INTERVAL=30s HEALTHCHECK_TIMEOUT=10s HEALTHCHECK_RETRIES=3 HEALTHCHECK_START_PERIOD=60s # ============================================================================= # RESOURCE LIMITS # ============================================================================= # Memory Limits (uncomment and adjust for production) # POSTGRES_MEMORY_LIMIT=2g # QUESTDB_MEMORY_LIMIT=4g # MONGODB_MEMORY_LIMIT=2g # DRAGONFLY_MEMORY_LIMIT=4g # PROMETHEUS_MEMORY_LIMIT=2g # GRAFANA_MEMORY_LIMIT=512m # LOKI_MEMORY_LIMIT=1g # CPU Limits (uncomment and adjust for production) # POSTGRES_CPU_LIMIT=1 # QUESTDB_CPU_LIMIT=2 # MONGODB_CPU_LIMIT=1 # DRAGONFLY_CPU_LIMIT=2 # PROMETHEUS_CPU_LIMIT=1 # GRAFANA_CPU_LIMIT=0.5 # LOKI_CPU_LIMIT=1