1 目录层级 /Users/dingrui/MyApp/docker-app/RocketMQ
创建宿主机目录
docker-compose.yml
broker的配置文件 broker可能部署集群 用name命名目录层级
2 docker-compose 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 services: namesrv: image: apache/rocketmq:5.3.1 container_name: rmq-namesrv ports: - 9876 :9876 restart: on-failure:3 privileged: true environment: - MAX_HEAP_SIZE=256M - HEAP_NEWSIZE=128M command: ["sh" ,"mqnamesrv" ] broker-a: image: apache/rocketmq:5.3.1 container_name: rmq-broker-a ports: - 10909 :10909 - 10911 :10911 restart: on-failure:3 privileged: true volumes: - ./broker/a/conf:/home/rocketmq/rocketmq-5.3.1/conf depends_on: - 'namesrv' environment: - NAMESRV_ADDR=namesrv:9876 - MAX_HEAP_SIZE=512M - HEAP_NEWSIZE=256M command: ["sh" ,"mqbroker" ,"-c" ,"/home/rocketmq/rocketmq-5.3.1/conf/broker.conf" ] dashboard: image: apacherocketmq/rocketmq-dashboard:1.0.0 container_name: rmq-dashboard ports: - 8083 :8083 restart: on-failure:3 privileged: true depends_on: - 'namesrv' environment: - JAVA_OPTS= -Xmx256M -Xms256M -Xmn128M -Drocketmq.namesrv.addr=namesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false -Dserver.port=8083
3 配置文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 namesrvAddr = host.docker.internal:9876 brokerClusterName = DefaultCluster brokerName = broker-a brokerId = 0 listenPort=10911 brokerIP1 = host.docker.internal brokerIP2 = host.docker.internal brokerRole = ASYNC_MASTER flushDiskType = ASYNC_FLUSH deleteWhen = 04 fileReservedTime = 72 maxMessageSize=4194304 defaultTopicQueueNums=4 autoCreateTopicEnable=true autoCreateSubscriptionGroup=true messageDelayLevel=1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h transactionTimeout=20 transactionCheckMax=5 transactionCheckInterval=10
4 集群启停
5 管理后台 访问http://127.0.0.1:8083/#/
6 本地部署 6.1 rocket mq 1 2 3 4 5 wget https://dist.apache.org/repos/dist/release/rocketmq/5.2.0/rocketmq-all-5.2.0-bin-release.zip unzip rocketmq-all-5.2.0-bin-release.zipcd rocketmq-all-5.2.0-bin-release/bin sh mqnamesrv sh mqbroker -n localhost:9876
6.2 rocket mq dashboard 1 2 3 git clone git@github.com:apache/rocketmq-dashboard.gitcd rocketmq-dashboard mvn spring-boot:run