# 生产拓扑映射:Nginx(前端) + 引擎 + MySQL8 + RocketMQ # 从仓库根目录执行: docker compose -f deploy/docker-compose.yml up --build # 说明:MySQL/RocketMQ 为生产映射;本机快速体验用根目录 ./start.sh(H2 内存库)即可。 services: mysql: image: mysql:8.0 environment: MYSQL_ROOT_PASSWORD: root123 MYSQL_DATABASE: trade_db MYSQL_USER: trade MYSQL_PASSWORD: trade123 ports: ["3306:3306"] healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-proot123"] interval: 5s timeout: 3s retries: 20 rocketmq-namesrv: image: apache/rocketmq:5.3.0 command: sh mqnamesrv ports: ["9876:9876"] rocketmq-broker: image: apache/rocketmq:5.3.0 command: sh mqbroker -n rocketmq-namesrv:9876 --enable-proxy environment: NAMESRV_ADDR: rocketmq-namesrv:9876 depends_on: [rocketmq-namesrv] ports: ["10911:10911", "8081:8080"] engine: build: context: .. dockerfile: deploy/Dockerfile.engine environment: DB_HOST: mysql DB_USER: trade DB_PASS: trade123 ROCKETMQ_NAMESRV: rocketmq-namesrv:9876 volumes: # 挂载模型目录:线上改 YAML + 调 /api/meta/reload 即热更新,无需重发版 - ../models:/app/models:ro depends_on: mysql: condition: service_healthy ports: ["8080:8080"] web: build: context: .. dockerfile: deploy/Dockerfile.web depends_on: [engine] ports: ["8088:80"]