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


Posted in Servers onApril 03, 2022

查询镜像

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容器部署rocketmq单机的文章就介绍到这了,更多相关Docker部署rocketmq内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Servers 相关文章推荐
Mac环境Nginx配置和访问本地静态资源的实现
Mar 31 Servers
nginx反向代理配置去除前缀案例教程
Jul 26 Servers
Nginx+Tomcat负载均衡集群的实现示例
Oct 24 Servers
Apache POI的基本使用详解
Nov 07 Servers
Shell脚本一键安装Nginx服务自定义Nginx版本
Mar 20 Servers
Tomcat用户管理的优化配置详解
Mar 31 Servers
Kubernetes控制节点的部署
Apr 01 Servers
Windows Server 2012 修改远程默认端口3389的方法
Apr 28 Servers
Nginx 安装SSL证书完成HTTPS部署
Apr 28 Servers
Python安装及建立虚拟环境的完整步骤
Jun 25 Servers
Tomcat安装使用及部署Web项目的3种方法汇总
Aug 14 Servers
Windows server 2016服务器基本设置
Aug 14 Servers
教你使用Jenkins集成Harbor自动发布镜像
tomcat的catalina.out日志按自定义时间格式进行分割的操作方法
Apr 02 #Servers
为Centos安装指定版本的Docker
Apr 01 #Servers
Dashboard管理Kubernetes集群与API访问配置
Kubernetes中Deployment的升级与回滚
Apr 01 #Servers
了解Kubernetes中的Service和Endpoint
Kubernetes控制节点的部署
Apr 01 #Servers
You might like
PHP常用技术文之文件操作和目录操作总结
2014/09/27 PHP
php生成shtml类用法实例
2014/12/09 PHP
Yii视图CGridView实现操作按钮定义地址示例
2016/07/14 PHP
yii2.0实现创建简单widgets示例
2016/07/18 PHP
js Map List 遍历使用示例
2013/07/10 Javascript
showModalDialog在谷歌浏览器下会返回Null的解决方法
2013/11/27 Javascript
js实现下拉框选择要显示图片的方法
2015/02/16 Javascript
jQuery的load()方法及其回调函数用法实例
2015/03/25 Javascript
javascript实现表单提交后,提交按钮不可用的方法
2015/04/18 Javascript
微信小程序 商城开发(ecshop )简单实例
2017/04/07 Javascript
利用vue开发一个所谓的数独方法实例
2017/12/21 Javascript
通过webpack引入第三方库的方法
2018/07/20 Javascript
layui table 复选框跳页后再回来保持原来选中的状态示例
2019/10/26 Javascript
jQuery实现可编辑的表格
2019/12/11 jQuery
为react组件库添加typescript类型提示的方法
2020/06/15 Javascript
vue接口请求加密实例
2020/08/11 Javascript
Python自动连接ssh的方法
2015/03/07 Python
Python进行数据科学工作的简单入门教程
2015/04/01 Python
Python基于dom操作xml数据的方法示例
2018/05/12 Python
实例详解Matlab 与 Python 的区别
2019/04/26 Python
python实现小球弹跳效果
2019/05/10 Python
python使用flask与js进行前后台交互的例子
2019/07/19 Python
django中上传图片分页三级联动效果的实现代码
2019/08/30 Python
手把手教你进行Python虚拟环境配置教程
2020/02/03 Python
pandas的resample重采样的使用
2020/04/24 Python
python实现坦克大战
2020/04/24 Python
python爬虫中PhantomJS加载页面的实例方法
2020/11/12 Python
7款设计巧妙的css3飘带状3D立体效果的导航菜单和表单窗口
2013/02/04 HTML / CSS
Html5页面在微信端的分享的实现方法
2018/08/30 HTML / CSS
保密承诺书
2014/03/27 职场文书
运动员获奖感言
2014/08/15 职场文书
2015年财务工作总结范文
2015/03/31 职场文书
公司出差管理制度范本
2015/08/05 职场文书
Java面试题冲刺第十五天--设计模式
2021/08/07 面试题
正则表达式拆分url实例代码
2022/02/24 Java/Android
MyBatis在注解上使用动态SQL方式(@select使用if)
2022/07/07 Java/Android