Docker compose部署RocketMQ(单机版)

 整个工具的代码都在Gitee或者Github地址内

gitee:solomon-parent: 这个项目主要是总结了工作上遇到的问题以及学习一些框架用于整合例如:rabbitMq、reids、Mqtt、S3协议的文件服务器、mongodb

github:GitHub - ZeroNing/solomon-parent: 这个项目主要是总结了工作上遇到的问题以及学习一些框架用于整合例如:rabbitMq、reids、Mqtt、S3协议的文件服务器、mongodb

1.新增data文件夹

2.新增logs文件夹

然后在里面新建两个文件夹broker跟nameserver

3.新增conf文件夹

4.在conf文件夹新增broker.conf文件

然后broker.conf默认的官方配置在以下地址
https://github.com/apache/rocketmq/blob/master/distribution/conf/broker.conf

# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.#用于集群中的 Broker 识别和管理,多个 Broker 可以属于同一个集群。
brokerClusterName = DefaultCluster
#在一个集群中标识 Broker,不同的 Broker 必须有不同的 brokerName。
brokerName = broker-a
#用于标识 Broker 的角色,0 通常表示主节点(Master),大于 0 的值用于备用节点(Slave)。
brokerId = 0
#设定在每天的凌晨 4 点(04 表示 4 AM)执行过期文件删除操作。
deleteWhen = 04
#指定消息存储文件的保留时间,超过这个时间的文件将被删除以释放存储空间。
fileReservedTime = 48
#ASYNC_MASTER 表示这个 Broker 是异步主节点,在异步复制模式下工作;它会在不等待从节点(Slave)确认的情况下继续处理新消息。
brokerRole = ASYNC_MASTER
#ASYNC_FLUSH 表示异步刷盘,即消息被写入内存后返回 ack,稍后再写入磁盘。这种方式提升性能,但可能在机器故障时丢失数据。
flushDiskType = ASYNC_FLUSH

5.新增docker compose文件

version: '3'  # Docker Compose 文件格式版本services:rmqnamesrv:image: apache/rocketmq:latest  # 使用 RocketMQ 最新版本的镜像container_name: rmqnamesrv     # 指定容器的名称为 rmqnamesrvports:- 9876:9876  # 将主机的 9876 端口映射到容器内的 9876 端口,供外部访问 NameServerrestart: always  # 如果容器崩溃或重新启动 Docker 服务,则自动重启容器privileged: true  # 以特权模式运行容器,通常用于需要访问宿主机设备的场景volumes:- ./logs/nameserver:/home/rocketmq/logs  # 将主机上的日志目录挂载到容器内- /etc/localtime:/etc/localtime  # 将宿主机的时间设置挂载到容器,以同步时间environment:- MAX_HEAP_SIZE=256M  # 设置 Java 虚拟机最大堆内存为 256MB- HEAP_NEWSIZE=128M   # 设置 Java 的新生代内存大小为 128MBcommand: ["sh","mqnamesrv"]  # 启动容器时执行的命令,用于启动 NameServerbroker:image: apache/rocketmq:latest  # 使用 RocketMQ 最新版本的镜像container_name: rmqbroker      # 指定容器的名称为 rmqbrokerports:- 10909:10909  # 将主机的 10909 端口映射到容器内的 10909 端口,供外部访问- 10911:10911  # 将主机的 10911 端口映射到容器内的 10911 端口,供外部访问restart: always  # 如果容器崩溃或重新启动 Docker 服务,则自动重启容器privileged: true  # 以特权模式运行容器volumes:- ./logs/broker:/root/logs  # 将主机上的日志目录挂载到容器内- ./data:/root/store  # 将主机上的数据目录挂载到容器内- ./conf/broker.conf:/home/rocketmq/broker.conf  # 挂载自定义的 Broker 配置文件- /etc/localtime:/etc/localtime  # 将宿主机的时间设置挂载到容器,以同步时间depends_on:- 'rmqnamesrv'  # 确保在启动 broker 之前,NameServer 已经启动environment:- NAMESRV_ADDR=rmqnamesrv:9876  # 设置 NameServer 的地址,以便 Broker 能够连接到 NameServer- MAX_HEAP_SIZE=512M  # 设置 Java 虚拟机最大堆内存为 512MB- HEAP_NEWSIZE=256M   # 设置 Java 的新生代内存大小为 256MBcommand: ["sh","mqbroker","-c","/home/rocketmq/broker.conf"]  # 启动 Broker 时使用自定义配置文件rmqdashboard:image: apacherocketmq/rocketmq-dashboard:latest  # 使用 RocketMQ Dashboard 最新版本的镜像container_name: rocketmq-dashboard  # 指定容器的名称为 rocketmq-dashboardports:- 8080:8080  # 将主机的 8080 端口映射到容器内的 8080 端口,供外部访问 Dashboardrestart: always  # 如果容器崩溃或重新启动 Docker 服务,则自动重启容器privileged: true  # 以特权模式运行容器depends_on:- 'rmqnamesrv'  # 确保在启动 Dashboard 之前,NameServer 已经启动environment:- JAVA_OPTS= -Xmx256M -Xms256M -Xmn128M -Drocketmq.namesrv.addr=rmqnamesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false# 设置 Java 虚拟机参数,指定 NameServer 地址,并禁用 VIP 通道

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/59684.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CC3学习记录

🌸 CC3 之前学习到的cc1和cc6都是通过Runtime进行命令执行的,如果Runtime被加入黑名单的话,整个链子也就失效了。而cc3则是通过动态类加载机制进行任意代码执行的。 🌸 版本限制 JDK版本:8u65 Commons-Collections…

flutter字体大小切换案例 小字体,标准字体,大字体,超大字体案例

flutter字体大小切换案例 小字体&#xff0c;标准字体&#xff0c;大字体&#xff0c;超大字体案例 Android iOS设备带有选择记录 我的flutter项目版本 environment: sdk: ‘>3.4.4 <4.0.0’ 图片案例 pubspec.yaml 添加依赖 # 屏幕尺寸适配 https://github.com/OpenF…

设计模式(四)装饰器模式与命令模式

一、装饰器模式 1、意图 动态增加功能&#xff0c;相比于继承更加灵活 2、类图 Component(VisualComponent)&#xff1a;定义一个对象接口&#xff0c;可以给这些对象动态地添加职责。ConcreteComponent(TextView)&#xff1a;定义一个对象&#xff0c;可以给这个对象添加一…

django入门【05】模型介绍(二)——字段选项

文章目录 1、null 和 blank示例说明⭐ null 和 blank 结合使用的几种情况总结&#xff1a; 2、choices**choices 在 Django 中有以下几种形式&#xff1a;**&#xff08;1&#xff09; **简单的列表或元组形式**&#xff08;2&#xff09; **字典映射形式**&#xff08;3&#…

C++清除所有输出【DEV-C++】所有编辑器通用 | 算法基础NO.1

各位小伙伴们&#xff0c;上一期的保留小数位数教学够用一辈子&#xff0c;有不错的点赞量&#xff0c;可我连一个粉丝铁粉都没有&#xff0c;你愿意做我的第一个铁粉吗&#xff1f;OK废话不多说&#xff0c;开始&#xff01; 温故与知心 可能你也学过&#xff0c;且是工作者…

【提高篇】3.3 GPIO(三,工作模式详解 上)

目录 一,工作模式介绍 二,输入浮空 2.1 输入浮空简介 2.2 输入浮空特点 2.3 按键检测示例 2.4 高阻态 三,输入上拉 3.1 输入上拉简介 3.2 输入上拉的特点 3.3 按键检测示例 四,输入下拉 4.1 输入下拉简介 4.2 输入下拉特点 4.3 按键检测示例 一,工作模式介绍…

Thinkphp6视图介绍

一.MVC MVC 软件系统分为三个基本部分&#xff1a;模型&#xff08;Model&#xff09;、视图&#xff08;View&#xff09;和控制器&#xff08;Controller&#xff09; ThinkPHP6 是一个典型的 MVC 架构 控制器—控制器&#xff0c;用于将用户请求转发给相应的Model进行处理&a…

C++(Qt)软件调试---内存泄漏分析工具MTuner (25)

C(Qt)软件调试—内存泄漏分析工具MTuner &#xff08;25&#xff09; 文章目录 C(Qt)软件调试---内存泄漏分析工具MTuner &#xff08;25&#xff09;[toc]1、概述&#x1f41c;2、下载MTuner&#x1fab2;3、使用MTuner分析qt程序内存泄漏&#x1f9a7;4、相关地址&#x1f41…

QT_CONFIG宏使用

时常在Qt代码中看到QT_CONFIG宏&#xff0c;之前以为和#define、DEFINES 差不多&#xff0c;看了定义才发现不是那么回事&#xff0c;定义如下&#xff1a; 看注释就知道了QT_CONFIG宏&#xff0c;其实是&#xff1a;实现了一个在编译时期安全检查&#xff0c;检查指定的Qt特性…

Redis下载历史版本

Linux版本&#xff1a; https://download.redis.io/releases/ Windows版本&#xff1a; https://github.com/tporadowski/redis/releases Linux Redis对应gcc版本

8 软件项目管理

软件项目管理 1、软件项目管理概念1.1 软件项目管理内容1.2 软件项目管理的4P要素人员产品过程项目 2、软件项目度量2.1 软件项目度量定义及度量方法2.2 面对规模的度量2.3 面对功能的度量UFC相关的五类组件14个复杂性调节因素 F i F_i Fi​一个功能点开发代码行数 2.4 软件估算…

游戏引擎学习第12天

视频参考:https://www.bilibili.com/video/BV1yom9YnEWY 这节没讲什么东西&#xff0c;主要是改了一下音频的代码 后面有介绍一些alloc 和malloc,VirtualAlloc 的东西 _alloca 函数&#xff08;或 alloca&#xff09;分配的是栈内存&#xff0c;它的特点是&#xff1a; 生命周…

如何保证Redis与MySQL双写一致性

什么是双写一致性问题&#xff1f; 双写一致性主要指在一个数据同时存在于缓存&#xff08;如Redis&#xff09;和持久化存储&#xff08;如MySQL&#xff09;的情况下&#xff0c;任何一方的数据更新都必须确保另一方数据的同步更新&#xff0c;以保持双方数据的一致状态。这一…

STM32设计学生宿舍监测控制系统

目录 前言 一、本设计主要实现哪些很“开门”功能&#xff1f; 二、电路设计原理图 电路图采用Altium Designer进行设计&#xff1a; 三、实物设计图 四、程序源代码设计 五、获取资料内容 前言 随着科技的飞速发展和智能化时代的到来&#xff0c;学生宿舍的安全、舒适…

算法--解决二叉树遍历问题

第一 实现树的结构 class Node(): # 构造函数&#xff0c;初始化节点对象&#xff0c;包含数据和左右子节点 def __init__(self, dataNone): self.data data # 节点存储的数据 self.left None # 左子节点&#xff0c;默认为None self.rig…

【C#】C#编程入门指南:构建你的.NET开发基础

文章目录 前言&#xff1a;1. C# 开发环境 VS的基本熟悉2. 解决方案与项目的关系3. 编辑、编译、链接、运行4. 托管代码和CLR4.1 CLR&#xff1a;4.2 C# 代码第编译过程&#xff08;两次编译的&#xff09; 5. 命名空间6. 类的组成与分析7. C# 的数据类型7.1 值类型7.2 引用类型…

算法闭关修炼百题计划(八)

一半来自力扣的push题单 1.最大连续1的个数II2.长度为k的无重复字符子串3.句子的相似性4.移位字符串分组5.x的平方根6.Z字形变换 1.最大连续1的个数II 给定一个二进制数组nums&#xff0c;如果最多可以翻转一个0&#xff0c;则返回数组中连续1的最大个数 之前是Window&#x…

论文笔记(五十六)VIPose: Real-time Visual-Inertial 6D Object Pose Tracking

VIPose: Real-time Visual-Inertial 6D Object Pose Tracking 文章概括摘要I. INTRODACTIONII. 相关工作III. APPROACHA. 姿态跟踪工作流程B. VIPose网络 文章概括 引用&#xff1a; inproceedings{ge2021vipose,title{Vipose: Real-time visual-inertial 6d object pose tra…

K8S containerd拉取harbor镜像

前言 接前面的环境 K8S 1.24以后开始启用docker作为CRI&#xff0c;这里用containerd拉取 参考文档 正文 vim /etc/containerd/config.toml #修改内容如下 #sandbox_image "registry.aliyuncs.com/google_containers/pause:3.10" systemd_cgroup true [plugins.…

LM2 : A Simple Society of Language Models Solves Complex Reasoning

文章目录 题目摘要简介相关工作方法论实验结果结论局限性 题目 LM2&#xff1a;简单的语言模型社会解决复杂推理问题 论文地址&#xff1a;https://aclanthology.org/2024.emnlp-main.920/ 项目地址&#xff1a; https://github.com/LCS2-IIITD/Language_Model_Multiplex 摘要…