使用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
您可能感兴趣的文章
- 12-20Kubernetes中使用临时容器进行故障排查的方法
- 12-20Nginx设置HTTPS的方法步骤
- 12-20二进制方式安装 Kubernetes1.18.3版本实现脚本
- 12-20Nginx工作模式及代理配置的使用细节
- 12-20ZooKeeper分布式协调服务设计核心概念及安装配置
- 12-20Kubernetes部署可视化地图的十个步骤
- 12-20关于docker清理Overlay2占用磁盘空间的问题(亲测有效)
- 12-20Docker compose配置文件写法及命令使用示例
- 12-20openwrt安装docker并启动的操作方法
- 12-20云原生Kubernetes初始化容器Init使用教程


阅读排行
推荐教程
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-07新版Eclipse集成Tomcat时找不到server选项的解决方法
- 12-06IIS7 应用程序池自动回收关闭的解决方案
- 12-05Windows Server 2019安装VMware
- 12-05Windows服务器默认IE浏览器无法下载文件的解决方法
- 12-05Docker安装Jenkins全过程
- 12-19Zabbix SAML SSO 登录绕过漏洞的操作流程
- 12-15Docker-Compose搭建Spark集群的实现方法
- 12-14Docker Desktop无法正常启动解决(failed to start...)
- 12-14k8s 与docker空间使用分析与清理方法





