# EMP 隔离测试环境变量模板 # 使用方式:复制为 .env 后按目标服务器实际情况修改。 # ----------------------------------------------------------------------------- # 镜像与项目名称 # ----------------------------------------------------------------------------- COMPOSE_PROJECT_NAME=emp-test CONTAINER_PREFIX=emp-test IMAGE_NAMESPACE=emp-test IMAGE_TAG=latest # 服务器外网 IP 或域名。 # Kafka 对外访问会把这个地址写入 advertised.listeners,外部客户端必须能访问它。 PUBLIC_HOST=127.0.0.1 # ----------------------------------------------------------------------------- # 对外端口 # ----------------------------------------------------------------------------- # 前端访问:http://PUBLIC_HOST:ADMIN_HOST_PORT ADMIN_HOST_PORT=4081 GATEWAY_HOST_PORT=9000 WS_HOST_PORT=3000 PDF_HOST_PORT=3100 NACOS_HOST_PORT=9008 NACOS_GRPC_HOST_PORT=10008 # MySQL / Kafka / TDengine 需要开放到宿主机,便于 Navicat、Kafka 客户端、TDengine UI/REST 调试。 # 如果宿主机端口已被其他项目占用,改这里即可。 MYSQL_HOST_PORT=13306 KAFKA_HOST_PORT=19094 TDENGINE_HOST_PORT=6030 TDENGINE_REST_HOST_PORT=6041 TDENGINE_RPC_HOST_PORT=6043 TDENGINE_RPC_UDP_HOST_PORT=6044 TDENGINE_UI_HOST_PORT=6060 # Redis 默认只绑定本机,避免直接暴露公网;确实需要外部访问再改成 0.0.0.0。 REDIS_BIND_HOST=127.0.0.1 REDIS_HOST_PORT=16379 # ----------------------------------------------------------------------------- # 中间件镜像 # ----------------------------------------------------------------------------- MYSQL_IMAGE=mysql:8.0 REDIS_IMAGE=redis:7-alpine KAFKA_IMAGE=bitnami/kafka:3.7.0 TDENGINE_IMAGE=tdengine/tdengine:3.3.6.0 NACOS_IMAGE=nacos/nacos-server:v2.3.2-slim # ----------------------------------------------------------------------------- # MySQL 8.0 # ----------------------------------------------------------------------------- MYSQL_DATABASE=emp MYSQL_ROOT_PASSWORD=change-me-mysql-root DB_URL=jdbc:mysql://mysql:3306/emp?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai DB_USER=root DB_PWD=change-me-mysql-root # Optional read datasource for emp-monitor. Omit to reuse DB_URL. # DB_READ_URL=jdbc:mysql://mysql-read:3306/emp?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai # DB_READ_USER=root # DB_READ_PWD=change-me-mysql-root # 给 emp_ws 模拟器读取车辆档案使用。 SIMULATOR_DB_HOST=mysql SIMULATOR_DB_PORT=3306 SIMULATOR_DB_USER=root SIMULATOR_DB_PASSWORD=change-me-mysql-root SIMULATOR_DB_DATABASE=emp SIMULATOR_DB_LIMIT=0 # ----------------------------------------------------------------------------- # Redis # ----------------------------------------------------------------------------- REDIS_HOST=redis REDIS_PORT=6379 REDIS_PASSWORD=change-me-redis REDIS_DB=0 # ----------------------------------------------------------------------------- # Kafka # ----------------------------------------------------------------------------- KAFKA_BROKERS=kafka:9092 KAFKA_GROUP_ID=ecmp-data-group-v2 KAFKA_TOPIC=vehicle-data KAFKA_USER= KAFKA_PWD= SIMULATOR_KAFKA_BROKERS=kafka:9092 SIMULATOR_KAFKA_TOPIC=vehicle-data SIMULATOR_KAFKA_USER= SIMULATOR_KAFKA_PASSWORD= SIMULATOR_KAFKA_CLIENT_ID=emp-simulator SIMULATOR_KAFKA_BATCH_SIZE=500 # ----------------------------------------------------------------------------- # TDengine # ----------------------------------------------------------------------------- TDENGINE_DATABASE=emp TDENGINE_USER=root TDENGINE_PWD=taosdata TDENGINE_URL=jdbc:TAOS-RS://tdengine:6041/emp # ----------------------------------------------------------------------------- # Nacos # ----------------------------------------------------------------------------- NACOS_ADDR=nacos:8848 NACOS_USER=nacos NACOS_PWD=nacos NACOS_AUTH_ENABLE=true NACOS_AUTH_IDENTITY_KEY=emp NACOS_AUTH_IDENTITY_VALUE=emp2026 NACOS_AUTH_TOKEN=ZW1wLXBsYXRmb3JtLW5hY29zLXNlY3JldC1rZXktMjAyNg== # ----------------------------------------------------------------------------- # 后端通用配置 # ----------------------------------------------------------------------------- SPRING_PROFILES_ACTIVE=prod JWT_SECRET=emp-platform-secret-key-2026-yjfs JWT_EXPIRATION=86400000 SCHEDULER_ENABLED=true # ----------------------------------------------------------------------------- # WebSocket / 模拟器 # ----------------------------------------------------------------------------- EMP_WS_ENV=production NODE_ENV=production PORT=3000 WS_INSTANCES=1 WS_PING_INTERVAL_MS=10000 WS_PING_TIMEOUT_MS=20000 WS_HOST=emp-ws SERVER_API_BASE_URL=http://emp-gateway:9000/api SIMULATOR_ADMIN_ROLE=ADMIN SIMULATOR_LOGIN_AUTH=88871fe697e860463cd062cf3705b16f SIMULATOR_JWT_SECRET=emp-platform-secret-key-2026-yjfs # ----------------------------------------------------------------------------- # PDF 与前端地址 # ----------------------------------------------------------------------------- PDF_SERVICE_URL=http://emp-pdf:3100 PDF_FRONTEND_BASE_URL=http://127.0.0.1:4081 # ----------------------------------------------------------------------------- # 第三方配置,按需填写 # ----------------------------------------------------------------------------- AMAP_KEY= COS_SECRET_ID=change-me COS_SECRET_KEY=change-me COS_REGION=ap-chengdu COS_BUCKET=emp-example-bucket # 车辆/设备同步的中控地址,隔离环境无真实中控时保留占位即可。 SYNC_BASE_URL=https://example.com SYNC_TK=change-me SYNC_TENANT_ID=change-me SYNC_REPORT_CRON=0 30 2 * * ? # 单车报告同步开关。隔离环境由自带 emp-ws 模拟器充当中控,需开启。 SYNC_REPORT_SYNC_ENABLED=true # 单车报告同步地址,指向 emp-ws 容器内网地址(compose 服务名 emp-ws,容器端口 3000)。 SYNC_REPORT_BASE_URL=http://emp-ws:3000 SYNC_REPORT_SYNC_CONCURRENCY=3 SYNC_REPORT_SYNC_GROUP_NAMES= SYNC_REPORT_CACHE_MISS_FETCH_ENABLED=false GROUP_REPORT_CRON=0 30 4 ? * THU,SUN