欢迎来到站长天空!

其它服务器

当前位置: 主页 > 服务器 > 其它服务器

使用Docker容器部署rocketmq单机的全过程

时间:2025-12-21 00:30:05|栏目:其它服务器|点击:

目录
  • 查询镜像
  • 拉取镜像
  • 创建namesrv数据存储路径
  • 构建namesrv容器
  • 创建broker数据存储路径
  • 创建broker配置文件
  • broker.conf 内容如下:
  • 构建broker容器
  • 构建rocketmq-console-ng

查询镜像

docker search rocketmq
NAME                                 DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
foxiswho/rocketmq                    rocketmq                                        69                   
rocketmqinc/rocketmq                 Image repository for Apache RocketMQ            54                   
styletang/rocketmq-console-ng        rocketmq-console-ng                             37                   
apacherocketmq/rocketmq              Docker Image for Apache RocketMQ                21                   
apache/rocketmq     

拉取镜像

docker pull foxiswho/rocketmq:server    #mq-server
...
docker pull foxiswho/rocketmq:broker    #mq-broker
...
docker pull styletang/rocketmq-console-ng   #客户端
...

创建namesrv数据存储路径

mkdir -p /var/local/docker/rocketmq/namesrv/store /var/log/docker/rocketmq/namesrv

构建namesrv容器

docker run -d \

--restart=always \

--name rmqnamesrv \

-p 9876:9876 \

-v /var/log/docker/rocketmq/namesrv:/var/log \

-v /var/local/docker/rocketmq/namesrv/store:/var/store \

-e "MAX_POSSIBLE_HEAP=100000000" \

foxiswho/rocketmq \

sh mqnamesrv

创建broker数据存储路径

mkdir -p /var/local/docker/rocketmq/broker/store /var/log/docker/rocketmq/broker

创建broker配置文件

mkdir -p /etc/docker/rocketmq/conf
touch broker.conf
vi broker.conf

broker.conf 内容如下:

vim /docker/rocketmq/conf/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 = 192.168.1.1  # 注意:改成你的IP地址

构建broker容器

docker run -d \

--restart=always \ 
--name rmqbroker \

--link rmqnamesrv:namesrv \

-p 10911:10911 \

-p 10909:10909 \

-v /var/local/docker/rocketmq/broker/store:/var/store \

-v /var/log/docker/rocketmq/broker:/var/logs \

-v /etc/docker/rocketmq/conf/broker.conf:/etc/rocketmq/conf/broker.conf \

-e "NAMESRV_ADDR=namesrv:9876" \

-e "MAX_POSSIBLE_HEAP=200000000" \

foxiswho/rocketmq:broker \

sh mqbroker -c /etc/rocketmq/conf/broker.conf

构建rocketmq-console-ng

docker run -d \

--name rmqconsole \

-p 8180:8080 \

--restart=always \

--link rmqserver:namesrv \

-e "JAVA_OPTS=-Drocketmq.namesrv.addr=namesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" \

-t styletang/rocketmq-console-ng

上一篇:Docker的四种网络模式

栏    目:其它服务器

下一篇:Docker exec 的实现原理介绍

本文标题:使用Docker容器部署rocketmq单机的全过程

本文地址:https://zz.feitang.co/server/32320.html

广告投放 | 联系我们 | 版权申明

申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:257218569 | 邮箱:257218569@qq.com

Copyright © 2018-2025 站长天空 版权所有 Powered by EyouCms冀ICP备14023439号