services: rmqnamesrv: image: apache/rocketmq:5.3.2 # 或换成 5.2.0,如果你必须用这个版本 container_name: rmqnamesrv restart: unless-stopped ports: - "9876:9876" environment: - TZ=Asia/Shanghai - JAVA_OPT_EXT=-Xms512m -Xmx512m -Xmn256m command: sh mqnamesrv networks: - rmq rmqbroker: image: apache/rocketmq:5.3.2 container_name: rmqbroker restart: unless-stopped ports: - "10911:10911" # FastRemoting 端口(客户端主要连接这里) - "10909:10909" # HA 端口(可选) environment: - TZ=Asia/Shanghai - NAMESRV_ADDR=rmqnamesrv:9876 - JAVA_OPT_EXT=-Xms1g -Xmx1g -Xmn512m depends_on: - rmqnamesrv command: > sh -c " echo ' brokerClusterName = DefaultCluster brokerName = broker-a brokerId = 0 deleteWhen = 04 fileReservedTime = 48 brokerRole = ASYNC_MASTER flushDiskType = ASYNC_FLUSH autoCreateTopicEnable = true autoCreateSubscriptionGroup = true ' > /home/rocketmq/rocketmq-5.3.2/conf/broker.conf && mqbroker -n rmqnamesrv:9876 -c /home/rocketmq/rocketmq-5.3.2/conf/broker.conf " networks: - rmq rmqdashboard: image: apacherocketmq/rocketmq-dashboard:latest container_name: rmqdashboard restart: unless-stopped ports: - "18080:8080" # 主机端口改成 18080,避免与你其他服务冲突 environment: - TZ=Asia/Shanghai - JAVA_OPTS=-Drocketmq.namesrv.addr=rmqnamesrv:9876 -Xms512m -Xmx512m depends_on: - rmqnamesrv networks: - rmq networks: rmq: driver: bridge