自己制作的RocketMQ的Docker镜像

简介: RocketMQ的Docker镜像简要配置说明

由RocketMQ官方包打包,版本为rocketmq:4.3.1(压缩包下载地址)

单机

broker-a-m:
    image: registry.cn-hangzhou.aliyuncs.com/leonardo/rocketmq-broker:4.3.1
    container_name: broker-a-m
    hostname: broker-a-m
    restart: always
    ports:
      - "10909:10909"
    networks:
      - "leonardo"
    depends_on:
      - "namesrv"
    volumes:
      - "/usr/local/docker/rockermq/logs/broker/a-m:/opt/logs"
      - "/usr/local/docker/rockermq/store/broker/a-m:/opt/store"
      - "/usr/local/docker/rockermq/data/broker/a-m:/opt/data"
      - "/usr/local/docker/rockermq/config/broker/a-m:/opt/conf"
      - "/etc/localtime:/etc/localtime"
AI 代码解读

集群

  broker-a-m:
    image: registry.cn-hangzhou.aliyuncs.com/leonardo/rocketmq-broker:4.3.1
    container_name: broker-a-m
    hostname: broker-a-m
    restart: always
    ports:
      - "10909:10909"
    networks:
      - "leonardo"
    depends_on:
      - "namesrv"
    volumes:
      - "/usr/local/docker/rockermq/logs/broker/a-m:/opt/logs"
      - "/usr/local/docker/rockermq/store/broker/a-m:/opt/store"
      - "/usr/local/docker/rockermq/data/broker/a-m:/opt/data"
      - "/usr/local/docker/rockermq/config/broker/a-m:/opt/conf"
      - "/etc/localtime:/etc/localtime"
      
  broker-a-s:
    image: registry.cn-hangzhou.aliyuncs.com/leonardo/rocketmq-broker:4.3.1
    container_name: broker-a-s
    hostname: broker-a-s
    networks:
      - "leonardo"
    depends_on:
      - "namesrv"
    restart: always
    ports:
      - "10911:10911"
    volumes:
      - "/usr/local/docker/rockermq/logs/broker/a-m:/opt/logs"
      - "/usr/local/docker/rockermq/store/broker/a-m:/opt/store"
      - "/usr/local/docker/rockermq/data/broker/a-m:/opt/data"
      - "/usr/local/docker/rockermq/config/broker/a-s:/opt/conf"
      - "/etc/localtime:/etc/localtime"
AI 代码解读

配置文件说明broker.properties

1.a-m

# 所属集群名字
brokerClusterName=leonardo-rocketmq-cluster
# broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-a
# nameServer 地址,分号分割
namesrvAddr=namesrv:9876
# 0 表示Master(主), > 0 表示slave(从)
brokerId=0
# Broker 对外服务的监听端口
listenPort=10909
#多网卡机器配置IP地址
brokerIP1=192.168.56.103
# 删除文件时间点,默认是凌晨4点
deleteWhen=04
# 文件保留时间,默认48小时
fileReservedTime=72
#角色
brokerRole=ASYNC_MASTER
#存储路径
storePathRootDir=/opt/store
#commitLog存储路径
storePathCommitLog=/opt/store/commitlog
# 在发送消息时,自动创建服务器不存在的Topic,默认创建的队列数
defaultTopicQueueNums=4
# 是否允许Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
# 是否允许Broker自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
# 刷盘方式
# - ASYNC_FLUSH 异步刷盘
# - SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
AI 代码解读

2.a-s


# 所属集群名字
brokerClusterName=leonardo-rocketmq-cluster
# broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-a
# nameServer 地址,分号分割
namesrvAddr=namesrv:9876
# 0 表示Master(主), > 0 表示slave(从)
brokerId=1
# Broker 对外服务的监听端口
listenPort=10911
#多网卡机器配置IP地址
brokerIP1=192.168.56.103
# 删除文件时间点,默认是凌晨4点
deleteWhen=04
# 文件保留时间,默认48小时
fileReservedTime=72
#角色
brokerRole=SLAVE
#存储路径
storePathRootDir=/opt/store
#commitLog存储路径
storePathCommitLog=/opt/store/commitlog
# 在发送消息时,自动创建服务器不存在的Topic,默认创建的队列数
defaultTopicQueueNums=4
# 是否允许Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=false
# 是否允许Broker自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=false
# 刷盘方式
# - ASYNC_FLUSH 异步刷盘
# - SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
AI 代码解读
相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
打赏
0
0
0
0
1
分享
相关文章
docker load 后镜像名称为空的问题解决
Docker在容器化应用程序时提供了强大的镜像管理功能,但也可能在某些操作中遇到如镜像名称为空的问题。通过理解问题的成因并采取适当的解决方案,如正确保存和加载镜像、手动修复标签等,可以有效避免和解决这一问题。通过本文提供的指导,您可以确保在使用Docker进行镜像操作时更为顺利,并提高容器管理的效率。
95 82
Docker部署RocketMQ5.2.0集群
本文详细介绍了如何使用Docker和Docker Compose部署RocketMQ 5.2.0集群。通过创建配置文件、启动集群和验证容器状态,您可以快速搭建起一个RocketMQ集群环境。希望本文能够帮助您更好地理解和应用RocketMQ,提高消息中间件的部署和管理效率。
250 91
YashanDB Docker镜像制作
本文介绍了使用Docker部署YashanDB数据库的方法及其优势。相比传统部署方式,Docker简化了环境配置,实现一键部署,确保软件在不同环境中一致运行。文章详细讲解了数据库镜像与容器的概念、Dockerfile的构建流程,以及如何通过Dockerfile定制YashanDB镜像。此外,还演示了镜像的发布过程,包括推送至阿里云容器镜像服务(ACR)。最后,探讨了容器启动时的初始化脚本设置和数据文件复用方法,满足客户对数据库自动化初始化和数据持久化的需求。
Docker Image即Docker镜像
Docker 镜像是 Docker 容器的基础,包含了运行应用程序所需的一切。通过 Dockerfile 可以方便地创建自定义镜像,并且利用 Docker 提供的命令可以轻松管理和使用这些镜像。掌握 Docker 镜像的创建、管理和使用,是进行容器化应用开发和部署的基础技能。希望本文能帮助读者更好地理解 Docker 镜像的概念和操作,提高开发和运维效率。
89 13
docker环境安装kafka/Flink/clickhouse镜像
通过上述步骤和示例,您可以系统地了解如何使用Docker Compose安装和配置Kafka、Flink和ClickHouse,并进行基本的验证操作。希望这些内容对您的学习和工作有所帮助。
193 28
《docker基础篇:4.Docker镜像》包括是什么、分层的镜像、UnionFS(联合文件系统)、docker镜像的加载原理、为什么docker镜像要采用这种分层结构呢、docker镜像commit
《docker基础篇:4.Docker镜像》包括是什么、分层的镜像、UnionFS(联合文件系统)、docker镜像的加载原理、为什么docker镜像要采用这种分层结构呢、docker镜像commit
259 70
|
22天前
|
多种脚本批量下载 Docker 镜像:Shell、PowerShell、Node.js 和 C#
本项目提供多种脚本(Shell、PowerShell、Node.js 和 C#)用于批量下载 Docker 镜像。配置文件 `docker-images.txt` 列出需要下载的镜像及其标签。各脚本首先检查 Docker 是否安装,接着读取配置文件并逐行处理,跳过空行和注释行,提取镜像名称和标签,调用 `docker pull` 命令下载镜像,并输出下载结果。使用时需创建配置文件并运行相应脚本。C# 版本需安装 .NET 8 runtime。
106 2
docker centos镜像 npm安装包时报错“npm ERR! code ECONNRESET”
通过上述步骤,您可以有效解决在 Docker 中使用 CentOS 镜像安装 npm 包时遇到的 "npm ERR! code ECONNRESET" 错误。希望这些方法能帮助您顺利进行 npm 包的安装。
158 26
Docker-基础(数据卷、自定义镜像、Compose)
通过数据卷实现持久化存储,通过自定义镜像满足特定需求,通过Docker Compose方便地管理多容器应用
107 27
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
228 6
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结