version: '3' services: emqx: image: emqx/emqx-enterprise:5.10.0 container_name: qos-msg-idea environment: EMQX_NODE__NAME: qos-msg@127.0.0.1 EMQX_CLUSTER__NAME: qos-msg-cluster volumes: - ./qos-data:/opt/emqx/data - ./qos-logs:/opt/emqx/log ports: - "1889:1883" - "18089:18083" - "8089:8083" restart: always emqx2: image: emqx/emqx-enterprise:5.10.0 container_name: qos-msg-idea-2 environment: EMQX_NODE__NAME: qos-msg-2@127.0.0.1 EMQX_CLUSTER__NAME: qos-msg-cluster restart: always mysql: image: mysql:8.0.18 container_name: mysql-idea environment: MYSQL_ROOT_PASSWORD: public ports: - "3307:3306" restart: always volumes: # 将本地的 sql/init.sql 文件挂载到容器内的 /docker-entrypoint-initdb.d/init.sql - ./sql:/docker-entrypoint-initdb.d:ro redis: image: redis:latest container_name: redis-idea ports: - "6376:6379" restart: always my-app: build: . container_name: my-app-idea depends_on: - mysql - emqx volumes: - ./api/config.js:/app/api/config.js - ./api/index.js:/app/api/index.js - ./.env:/app/.env ports: - "8080:8080" restart: always