小知识:使用Docker容器部署rocketmq单机的全过程

查询镜像

?
1
2
3
4
5
6
7
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

拉取镜像

?
1
2
3
4
5
6
docker pull foxiswho/rocketmq:server    #mq-server
docker pull foxiswho/rocketmq:broker    #mq-broker
docker pull styletang/rocketmq-console-ng   #客户端

创建namesrv数据存储路径

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

构建namesrv容器

?
1
2
3
4
5
6
7
8
9
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数据存储路径

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

创建broker配置文件

?
1
2
3
mkdir -p /etc/docker/rocketmq/conf
touch broker.conf
vi broker.conf

broker.conf 内容如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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容器

?
1
2
3
4
5
6
7
8
9
10
11
12
13
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

?
1
2
3
4
5
6
7
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容器部署rocketmq单机的文章就介绍到这了,更多相关Docker部署rocketmq内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/ab52262879/article/details/123920030

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:docker-compose配置并部署redis服务的实现

2023-3-8 13:06:36

建站知识

小知识:教你使用Jenkins集成Harbor自动发布镜像

2023-3-8 13:21:10

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索