rocketmq(1): win10 docker 安装配置

it2026-01-18  6

rocketmq(1): win10 docker 安装配置

1. 安装启动 nameserver

pull 镜像 # 搜索rocketmq 镜像 docker search rocketmq # pull docker pull rocketmqinc/rocketmq

. 挂在目录

在本地创建 logs 和 store 目录

启动 nameserver 服务

docker run -d --restart=always --name=rmqnamesrv -p 9876:9876 -v D:\xiaoc\rocketmq\data\namesrv\logs:/root/logs -v D:\xiaoc\rocketmq\data\namesrv\store:/root/store -e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq sh mqnamesrv 指令参数说明-d后台运行–restart=alwaysdocker重启运行–name=rmqnamesrv服务命名为 rmqnamesrv-p 9876:9876把容器内端口9876 挂载到宿主机的9876 端口-v D:\xiaoc\rocketmq\data\namesrv\logs:/root/logs把容器 /root/logs 目录挂载到宿主机目录-v D:\xiaoc\rocketmq\data\namesrv\store:/root/store把容器 /root/store 目录挂载到宿主机目录-e “MAX_POSSIBLE_HEAP=100000000”设置容器的最大堆内存为100000000rocketmqinc/rocketmq镜像sh mqnamesrv启动namesrv服务

2. 安装启动 broker

挂载目录, 存储broker 数据与日志

创建 broker.conf 配置文件

# 所属集群名称,如果节点较多可以配置多个 brokerClusterName = DefaultCluster #broker名称,master和slave使用相同的名称,表明他们的主从关系 brokerName = broker-a #0表示Master,大于0表示不同的slave brokerId = 0 #表示几点做消息删除动作,默认是凌晨4点 deleteWhen = 04 #在磁盘上保留消息的时长,单位是小时 fileReservedTime = 48 #有三个值:SYNC_MASTER,ASYNC_MASTER,SLAVE;同步和异步表示Master和Slave之间同步数据的机制; brokerRole = ASYNC_MASTER #刷盘策略,取值为:ASYNC_FLUSH,SYNC_FLUSH表示同步刷盘和异步刷盘;SYNC_FLUSH消息写入磁盘后才返回成功状态,ASYNC_FLUSH不需要; flushDiskType = ASYNC_FLUSH # 设置broker节点所在服务器的ip地址 brokerIP1 = 172.16.8.9 启动 broker 节点 docker run -d --restart=always --name rmqbroker --link rmqnamesrv:namesrv -p 10911:10911 -p 10909:10909 -v D:\xiaoc\rocketmq\data\broker\logs:/root/logs -v D:\xiaoc\rocketmq\data\broker\store:/root/store -v D:\xiaoc\rocketmq\conf\broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf 指令参数说明-d后台运行–restart=alwaysdocker重启运行–name rmqbroker服务命名为 rmqbroker–link rmqnamesrv:namesrv和rmqnamesrv容器连接通信-p 10911:10911 -p 10909:10909把容器内端口10911, 10909 挂载到宿主机的10911, 10909端口-v D:\xiaoc\rocketmq\data\broker\logs:/root/logs把容器 /root/logs 目录挂载到宿主机目录-v D:\xiaoc\rocketmq\data\broker\store:/root/store把容器 /root/store 目录挂载到宿主机目录-v D:\xiaoc\rocketmq\conf\broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf挂载broker 配置文件-e “NAMESRV_ADDR=namesrv:9876” -e “MAX_POSSIBLE_HEAP=200000000”指定 namesrv 地址与broker服务的最大堆内存rocketmqinc/rocketmq镜像sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf指定配置文件启动broker节点

3. 安装启动 rocket console可视化

pull 镜像 docker pull pangliang/rocketmq-console-ng 启动 console docker run -d --restart=always --name rmqadmin -e "JAVA_OPTS=-Drocketmq.namesrv.addr=172.16.8.9:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 9999:8080 pangliang/rocketmq-console-ng 指令参数说明-d后台运行–restart=alwaysdocker重启运行–name rmqadmin服务命名为 rmqadmin-e “JAVA_OPTS=-Drocketmq.namesrv.addr=172.16.8.9:9876”指定rocketmq 的地址端口,-Dcom.rocketmq.sendMessageWithVIPChannel=false不使用vip通道发送消息-p 9999:8080把容器端口8080 挂载到宿主机 9999端口pangliang/rocketmq-console-ng镜像 防火墙设置 进入控制面板防火墙 -->高级设置–>入站规则增加 9876 tcp 和 10911 tcp访问 rocketmq console , 网址: http://localhost:9999/
最新回复(0)