# Docker Compose interpolation defaults for the stacks under dc3/. # Run compose commands from the repository root so this file is loaded automatically. # Variables under "Local source-run defaults" mirror dc3/env/dev.env(.sh). # Compose only injects variables that are explicitly referenced by a compose file. # Shared image / logging defaults # Makefile registry selector. Set REGISTRY=cn here once instead of passing it to every make command. REGISTRY=auto DC3_IMAGE_REGISTRY=pnoker DC3_IMAGE_TAG=2026.6 DC3_LOG_MAX_SIZE=10M DC3_LOG_MAX_FILE=20 DC3_BIND_HOST=127.0.0.1 APM_AGENT_ENABLE=false # Secrets intentionally NOT set here: DC3_SECURITY_KEY and AUTH_HMAC_SECRET are # supplied by dc3/env/dev.env for local runs. Production deployments MUST set # deployment-specific values (e.g. `openssl rand -hex 32`) — the app/scale/swarm # compose stacks refuse to start without them, and pre/pro profiles additionally # reject blank or publicly-known values at startup. # Base dependency stack / local database defaults POSTGRES_HOST=localhost POSTGRES_PORT=35432 POSTGRES_USERNAME=dc3 POSTGRES_PASSWORD=dc3dc3dc3 POSTGRES_DB=dc3 DC3_POSTGRES_PORT=35432 DC3_RABBITMQ_TLS_PORT=35671 DC3_RABBITMQ_PORT=35672 DC3_RABBITMQ_MANAGEMENT_PORT=15672 # Message broker selection for the internal async plane (docs/mq-brokers.md). # One of: rabbitmq (default) | kafka | rocketmq | pulsar | activemq | mqtt DC3_MQ_TYPE=rabbitmq # Connection settings for non-rabbitmq selections (only read when DC3_MQ_TYPE matches) DC3_MQ_KAFKA_BOOTSTRAP=kafka:9092 DC3_MQ_ROCKETMQ_NAMESRV=rocketmq-namesrv:9876 DC3_MQ_PULSAR_URL=pulsar://pulsar:6650 DC3_MQ_ACTIVEMQ_URL=tcp://activemq:61616 DC3_MQ_MQTT_HOST=dc3-rabbitmq DC3_MQ_MQTT_PORT=1883 # PostgreSQL + TimescaleDB are the canonical persistence stack. There is no # runtime database/TSDB selector; all centers use the same R2DBC contract. # Local RabbitMQ defaults RABBITMQ_VIRTUAL_HOST=dc3 RABBITMQ_HOST=localhost RABBITMQ_PORT=35672 RABBITMQ_USERNAME=dc3 RABBITMQ_PASSWORD=dc3dc3dc3 RABBITMQ_MQTT_EXCHANGE=dc3.e.mqtt # Internal app-to-RabbitMQ port. Use 5671 with RABBITMQ_SSL_ENABLED=true. RABBITMQ_CONTAINER_PORT=5672 RABBITMQ_SSL_ENABLED=false RABBITMQ_SSL_ALGORITHM=TLS RABBITMQ_SSL_VALIDATE_SERVER_CERTIFICATE=false RABBITMQ_SSL_VERIFY_HOSTNAME=false # Application stack published ports DC3_GATEWAY_PORT=8000 DC3_AUTH_PORT=8300 DC3_AUTH_GRPC_PORT=9300 DC3_MANAGER_PORT=8400 DC3_MANAGER_GRPC_PORT=9400 DC3_DATA_PORT=8500 DC3_DATA_GRPC_PORT=9500 DC3_AGENTIC_PORT=8600 DC3_LISTENING_VIRTUAL_TCP_PORT=6270 DC3_LISTENING_VIRTUAL_UDP_PORT=6271 # Local source-run defaults NODE_ENV=dev DC3_FACADE_MODE=grpc DC3_FACADE_GRPC_DEADLINE_MS=3000 CENTER_AUTH_HOST=localhost CENTER_MANAGER_HOST=localhost CENTER_DATA_HOST=localhost CENTER_AGENTIC_HOST=localhost # Agentic / OpenAI-compatible API defaults AGENTIC_FALLBACK_OPENAI_BASE_URL=https://api.openai.com AGENTIC_FALLBACK_OPENAI_API_KEY= AGENTIC_FALLBACK_OPENAI_MODEL=gpt-4o AGENTIC_FALLBACK_OPENAI_TEMPERATURE=0.7 AGENTIC_FALLBACK_OPENAI_MAX_TOKENS=2048 AGENTIC_MEMORY_SCHEMA_INIT=never AGENTIC_MEMORY_ENABLED=false AGENTIC_TOOL_CALLING_ENABLED=true AGENTIC_MEMORY_MAX_MESSAGES=50 AGENTIC_ATTACHMENT_STORAGE_PATH=dc3/data/agentic/attachments # Local MQTT defaults MQTT_BROKER_HOST=localhost MQTT_BROKER_PORT=31883 MQTT_USERNAME=dc3 MQTT_PASSWORD=dc3dc3dc3 MQTT_BATCH_SPEED=100 MQTT_BATCH_INTERVAL=5 # Point processing defaults POINT_BATCH_SIZE=500 POINT_BATCH_RECEIVE_TIMEOUT_MILLIS=100 POINT_CONCURRENT_CONSUMERS=4 POINT_MAX_CONCURRENT_CONSUMERS=16 POINT_PREFETCH_COUNT=1000 POINT_RETRY_MAX_RETRIES=3 POINT_RETRY_INITIAL_INTERVAL_MILLIS=1000 POINT_RETRY_MULTIPLIER=2 POINT_RETRY_MAX_INTERVAL_MILLIS=10000 # Distributed driver runtime lease (PostgreSQL-backed, no Redis) DC3_DRIVER_LEASE_SECONDS=30 DC3_DRIVER_LEASE_RENEW_CRON=0/10 * * * * ? DC3_DRIVER_LEASE_QUEUE_EXPIRES_MILLIS=300000 # Optional EMQX stack published ports DC3_EMQX_WS_PORT=38083 DC3_EMQX_WSS_PORT=38084 DC3_EMQX_MQTT_PORT=31883 DC3_EMQX_MQTTS_PORT=38883 DC3_EMQX_DASHBOARD_PORT=18083 # Observability stack GF_SERVER_ROOT_URL=http://localhost:3000 DC3_GRAFANA_PORT=3000 DC3_KIBANA_PORT=5601 DC3_ES_JAVA_OPTS=-Xms512m -Xmx512m DC3_LS_JAVA_OPTS=-Xms256m -Xmx256m # Optional external-store published ports (docker-compose-optional.yml) DC3_JAEGER_UI_PORT=16686 DC3_JAEGER_OTLP_GRPC_PORT=4317 # Per-process overrides. Uncomment only for a single service process/container; # these variables are intentionally not shared defaults across all services. # TCP_PORT=6270 # UDP_PORT=6271 # POSTGRES_SCHEMA=dc3_manager # Gateway route overrides. Usually CENTER_*_HOST is enough for local runs. # GATEWAY_ROUTE_AUTH_TOKEN_URI=http://localhost:8300/ # GATEWAY_ROUTE_AUTH_URI=http://localhost:8300 # GATEWAY_ROUTE_MANAGER_URI=http://localhost:8400 # GATEWAY_ROUTE_DATA_URI=http://localhost:8500 # GATEWAY_ROUTE_AGENTIC_URI=http://localhost:8600