首页 > 其他分享 >RocketMQ Docker安装

RocketMQ Docker安装

时间:2023-08-14 13:01:47浏览次数:34  
标签:-- 安装 broker sh RocketMQ Docker local rocketmq usr

安装Name Server

创建NameServer映射路径

mkdir /usr/local/rocketmq/namesvr/{logs,data} -p

# 设置权限
chmod 777 -R /usr/local/rocketmq/nameserver/*

创建NameServer容器

docker run -d \
--privileged=true \
--name rmqnamesrv \
apache/rocketmq:5.1.0 sh mqnamesrv

将容器中的启动脚本拷贝到宿主机中

docker cp rmqnamesrv:/home/rocketmq/rocketmq-5.1.0/bin/runserver.sh /usr/local/rocketmq/nameserver/bin/runserver.sh

编辑启动脚本

vim /usr/local/rocketmq/namesrv/bin/runserver.sh

将calculate_heap_sizes 函数的位置注释并保存(在文件的末尾)

RocketMQ  Docker安装_docker

关闭容器

docker rm -f rmqnamesrv

创建容器

 docker run -d \
--privileged=true \
--restart=always \
--name rmqnamesrv \
-p 9876:9876  \
-v /usr/local/rocketmq/nameserver/logs:/home/rocketmq/logs \
-v /usr/local/rocketmq/nameserver/bin/runserver.sh:/home/rocketmq/rocketmq-5.1.0/bin/runserver.sh \
-e "MAX_HEAP_SIZE=256M" \
-e "HEAP_NEWSIZE=128M" \
apache/rocketmq:5.1.0 sh mqnamesrv

部署Broker

创建映射目录

# 创建需要的挂载目录
mkdir /usr/local/rocketmq/broker/{logs,data,conf,bin} -p 

chmod 777 -R /usr/local/rocketmq/broker/*

创建broker.conf文件

vim /usr/local/rocketmq/broker/conf/broker.conf

broker.conf

# nameServer 地址多个用;隔开 默认值null
# 例:127.0.0.1:6666;127.0.0.1:8888 
namesrvAddr = ip:port
# 集群名称
brokerClusterName = DefaultCluster
# 节点名称
brokerName = broker-a
# broker id节点ID, 0 表示 master, 其他的正整数表示 slave,不能小于0 
brokerId = 0
# Broker服务地址	String	内部使用填内网ip,如果是需要给外部使用填公网ip
brokerIP1 = ip
# Broker角色 ASYNC_MASTER  SYNC_MASTER
brokerRole = ASYNC_MASTER
# 刷盘方式
flushDiskType = ASYNC_FLUSH
# 在每天的什么时间删除已经超过文件保留时间的 commit log,默认值04
deleteWhen = 04
# 以小时计算的文件保留时间 默认值72小时
fileReservedTime = 72
# 是否允许Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
# 是否允许Broker自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true

创建容器

docker run -d \
--name rmqbroker \
--privileged=true \
apache/rocketmq:5.1.0 \
sh mqbroker

将容器中的启动脚本拷贝到宿主机中

docker cp rmqbroker:/home/rocketmq/rocketmq-5.1.0/bin/runbroker.sh /usr/local/rocketmq/broker/bin/runbroker.sh

修改runbroker.sh

# 打开脚本文件
vi /usr/local/rocketmq/broker/bin/runbroker.sh 

将calculate_heap_sizes 函数的位置注释并保存(在文件的末尾)

RocketMQ  Docker安装_docker_02

关闭容器

docker rm -f rmqnamesrv

创建broker

docker run -d \
--restart=always \
--name rmqbroker \
-p 10911:10911 -p 10909:10909 \
--privileged=true \
-v /usr/local/rocketmq/broker/logs:/root/logs \
-v /usr/local/rocketmq/broker/store:/root/store \
-v /usr/local/rocketmq/broker/conf/broker.conf:/home/rocketmq/broker.conf \
-v /usr/local/rocketmq/broker/bin/runbroker.sh:/home/rocketmq/rocketmq-5.1.0/bin/runbroker.sh \
-e "MAX_HEAP_SIZE=512M" \
-e "HEAP_NEWSIZE=256M" \
apache/rocketmq:5.1.0 \
sh mqbroker -c /home/rocketmq/broker.conf

部署RocketMQ图形化界面

docker run -d \
--restart=always \
--name rmqdashboard \
-e "JAVA_OPTS=-Xmx256M -Xms256M -Xmn128M -Drocketmq.namesrv.addr=ip:port -Dcom.rocketmq.sendMessageWithVIPChannel=false" \
-p 8080:8080 \
apacherocketmq/rocketmq-dashboard

访问RocketMQ图形界面

http://ip:8080

RocketMQ  Docker安装_rocketmq_03


标签:--,安装,broker,sh,RocketMQ,Docker,local,rocketmq,usr
From: https://blog.51cto.com/u_15497049/7075155

相关文章

  • 【Alibaba中间件技术系列】「RocketMQ技术专题」小白专区之领略一下RocketMQ基础之最!
    推荐超值课程:点击获取应一些小伙伴们的私信,希望可以介绍一下RocketMQ的基础,那么我们现在就从0开始,进入RocketMQ的基础学习及概念介绍,为学习和使用RocketMQ打好基础!RocketMQ是一款快速地、可靠地、分布式、容易使用的消息中间件,由Alibaba开发,其前身是Metaq,Metaq可以看成是lin......
  • 【Alibaba中间件技术系列】「RocketMQ技术专题」帮你梳理RocketMQ相关的消费问题以及
    推荐超值课程:点击获取消息重复消费的问题消息重复消费是各个MQ都会发生的常见问题之一,在一些比较敏感的场景下,重复消费会造成比较严重的后果,比如重复扣款等。消息重复消费场景及解决办法在什么情况下会发生RocketMQ的消息重复消费呢?生产者重复发送场景当系统的调用链路比......
  • ubuntu安装apache
    要在Ubuntu上安装Apache,请按照以下步骤进行操作:打开终端。更新包列表。使用以下命令进行更新:Copysudoaptupdate安装Apache。使用以下命令进行安装:Copysudoaptinstallapache2安装过程中,系统会要求你输入用户密码。安装完成后,可以使用以下命......
  • 安装MinGW时报错“The file has been downloaded incorrectly!”解决方案
    前言作为一个准备学习C语言的准大一的通信工程崽子,Linux还不会用,在Windows上使用gcc得安装MinGW。我知道各位大佬们看到第一句话之后想说些什么。虽然说有很多优秀的编程软件自带了MinGW,但是想想,如果使用Windows的cmd直接敲个“gcc-v”来跑代码,逼格不直接蹭蹭上涨,能够充分满足......
  • DockerNotes
    1镜像1.1镜像仓库   镜像仓库  1.2拉取镜像dockerpullmysql 1.3操作镜像#查看镜像dockerimages 2容器2.1创建容器dockerrun-d--namemyMysql-eMYSQL_ROOT_PASSWORD=123456-p3306:3306mysql(1)成功启动会自动运行,用dockerps查看......
  • 安装JDK
    卸载JDK删除java的安装目录。删除JAVA_HOME删除path下关于java的目录java-version检验 安装JDK在浏览器中下载jdk下载电脑对应的版本安装jdk记住安装路径配置环境变量我的电脑-->右键-->属性环境变量-->JAVA_HOME配置path变量测......
  • KylinosV10银河麒麟高级服务器操作系统V10-安装telnet
    国产银河麒麟系统也是生产环境上经常遇到的(官网简介:银河麒麟高级服务器操作系统V10-国产操作系统、银河麒麟、中标麒麟、开放麒麟、星光麒麟——麒麟软件官方网站(kylinos.cn))这版系统分为服务器版和个人桌面版;其中服务器版命令估计是基于红帽体系;而桌面版命令估计是基于Ubunt......
  • 建筑安装施工员
    安装施工员岗位职责1、负责给排水、采暖、通风、消防系统工程等施工技术及现场管理工作;2、审核给排水/采暖、通风方案等工程招标文件的技术部分; 3、协调劳务单位,监理单位处理现场问题; 4、负责工程各项隐蔽验收、分项验收及竣工验收等验收工作; 5、做好本专业有关技术......
  • 如何在centos 7上安装pip命令?
    在centos7上,默认是python2.7的版本,并且没有pip命令。 如果要通过pip命令安装一些包、模块,就没有办法做到的。 所以,需要先进行pip命令的安装。 通过使用下面的命令,在centos7上安装pip命令:yuminstall-ypython-pip   安装之后,输入下面的命令,查看pip命令的......
  • centos安装arp-scan,使用github上的源码安装
    使用github上的源码安装按照以下步骤使用arp-scan的GitHub源码进行安装:安装编译工具和依赖项:打开终端并以root用户或具有sudo权限的用户身份登录。运行以下命令以安装编译工具和必要的依赖项:sudoyuminstallgccmakelibpcap-devel下载源代码:在终端中,使用以下命令......