自己制作的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部署RocketMQ5.2.0集群
本文详细介绍了如何使用Docker和Docker Compose部署RocketMQ 5.2.0集群。通过创建配置文件、启动集群和验证容器状态,您可以快速搭建起一个RocketMQ集群环境。希望本文能够帮助您更好地理解和应用RocketMQ,提高消息中间件的部署和管理效率。
243 91
【Docker项目实战】Docker部署RabbitMQ消息中间件
【10月更文挑战第8天】Docker部署RabbitMQ消息中间件
192 1
【Docker项目实战】Docker部署RabbitMQ消息中间件
Docker安装rabbitmq
如何使用Docker安装和配置RabbitMQ服务,包括拉取RabbitMQ镜像、创建容器、配置持久化和访问管理界面的步骤。
363 0
Docker安装rabbitmq
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
消息中间件RabbitMQ---Docker安装RabbitMQ、以及RabbitMQ的基本使用【二】
这篇文章提供了RabbitMQ的安装和基本使用教程,包括如何使用Docker拉取RabbitMQ镜像、创建容器、通过浏览器访问管理界面,以及如何创建交换机、队列、绑定和使用direct、fanout和topic三种类型的交换器进行消息发布和接收的测试。
消息中间件RabbitMQ---Docker安装RabbitMQ、以及RabbitMQ的基本使用【二】
docker安装rabbitmq并配置hyperf使用
通过以上步骤,您可以实现在Docker容器中安装和配置RabbitMQ,并在PHP的Hyperf框架中进行集成和使用。这种方式为开发者提供了快速部署并实现消息队列解决方案的能力,同时维持了环境与生产环境的一致性,从而为开发高效的分布式应用程序提供了便利。
151 3
docker安装rabbitmq并配置hyperf使用
Docker部署RabbitMQ消息中间件
【7月更文挑战第4天】Docker部署RabbitMQ消息中间件
322 3
【RocketMQ系列二】通过docker部署单机RocketMQ
【RocketMQ系列二】通过docker部署单机RocketMQ
1594 4
Docker Compose 一键快速部署 RocketMQ
Docker Compose 一键快速部署 RocketMQ
233 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等