144 lines
4.3 KiB
Docker
144 lines
4.3 KiB
Docker
# 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
|