docker安装rocketMq教程

本文详细介绍如何在Linux环境下使用Docker部署RocketMQ消息中间件,包括拉取镜像、配置文件设置、启动Namesrv和Broker容器及安装控制台等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文前提是Linux系统上已经安装了docker环境,且对rocketmq的服务有基本的了解

  • 拉取rocketmq镜像
docker pull rocketmqinc/rocketmq:4.4.0
  • 创建数据存放目录
cd /usr/local
mkdir rocketmq
cd rocketmq
mkdir data
cd data
mkdir namesrv
cd namesrv
mkdir logs
mkdir store
  • 启动namesrv容器
docker run -d -p 9876:9876 -v /usr/local/rocketmq/data/namesrv/logs:/root/logs -v /usr/local/rocketmq/data/namesrv/store:/root/store --name rocketmqnamesrv -e "MAX_POSSIBLE_HEAP=100000000" rocketmqinc/rocketmq:4.4.0 sh mqnamesrv
  • 安装broker

    • 创建broker.conf文件

      cd /usr/local/rocketmq
      mkdir conf
      cd conf
      touch broker.conf
      vi broker.conf
      # 添加如下内容
      brokerClusterName = DefaultCluster
      brokerName = broker-a
      brokerId = 0
      deleteWhen = 04
      fileReservedTime = 48
      brokerRole = ASYNC_MASTER
      flushDiskType = ASYNC_FLUSH
      brokerIP1 = IP地址
      # 创建完文件后,保存退出
      
    • 添加目录

      cd /usr/local/rocketmq/data
      mkdir broker
      cd broker
      mkdir logs
      mkdir store
      
  • 启动broker

     docker run -d -p 10911:10911 -p 10909:10909 -v /usr/local/rocketmq/data/broker/logs:/root/logs -v /usr/local/rocketmq/data/broker/store:/root/store -v /usr/local/rocketmq/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf --name rocketmqbroker --link rocketmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" rocketmqinc/rocketmq:4.4.0 sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
    
  • 安装rocketmq控制台

    • 拉取镜像

      docker pull styletang/rocketmq-console-ng
      
    • 启动控制台

      docker run -e "JAVA_OPTS=-Drocketmq.namesrv.addr=IP地址:9876 - Dcom.rocketmq.sendMessageWithVIPChannel=false" -p 8080:8080 -t styletang/rocketmq-console-ng
      
    • 访问控制台

      http://ip:8080
      
### 使用Docker部署RocketMQ详细教程 #### 一、准备工作 确保本地已安装DockerDocker Compose。如果遇到 Docker Compose 版本问题,可以通过更新来解决此问题[^4]。 ```bash curl -L https://github.com/docker/compose/releases/download/1.28.6/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose ``` #### 二、拉取所需镜像 为了构建完整的 RocketMQ 环境,需要分别获取 NameServer 和 Broker 的官方镜像以及管理界面的第三方镜像。 对于 NameServer: ```bash docker pull foxiswho/rocketmq:server-4.7.0 ``` 对于 Broker: ```bash docker pull foxiswho/rocketmq:broker-4.7.0 ``` 而对于监控页面,则有两种选择方式之一即可: 方案A (推荐): ```bash docker pull styletang/rocketmq-d --name rocketmq-dashboard \ -e "JAVA_OPTS=-Drocketmq.namesrv.addr=127.0.0.1:9876" \ -p 8080:8080 \ -t registry.cn-hangzhou.aliyuncs.com/qiluo-images/rocketmq-dashboard:latest ``` #### 三、创建并启动容器 先启动 NameServer 容器作为集群的核心组件: ```bash docker run -dit --name rmqnamesrv \ -v /home/data/nameserver/logs:/root/logs \ foxiswho/rocketmq:server-4.7.0 sh -c "nohup bash namesrv.sh &" ``` 接着配置并启动Broker服务端口映射到主机上方便外部访问: ```bash docker run -dit --name rmqbroker \ -e NAMESRV_ADDR="rmqnamesrv:9876" \ -p 10911:10911 \ -p 10909:10909 \ --link rmqnamesrv:namesrv \ foxiswho/rocketmq:broker-4.7.0 sh -c "nohup bash broker.sh start &" ``` 最后可以按照个人喜好决定是否要开启图形化操作面板(console),这里以 `styletang/rocketmq-console-ng`为例说明其启动命令如下所示: ```bash docker run -dit --name rocketmq-console \ -e JAVA_OPTS="-Dcom.rocketmq.sendMessageWithVIPChannel=false" \ -p 8080:8080 \ styletang/rocketmq-console-ng ``` 此时应该可以在浏览器输入 http://localhost:8080 访问到 RocketMQ Console 页面了。 #### 四、验证部署成功与否 通过查看日志文件确认各部分工作状态良好;也可以尝试发送测试消息检验整个系统的连通性和功能完整性。 如果有任何异常情况发生,比如防火墙阻止连接或是 Broker 不断重启等问题,建议查阅相关文档或社区资源寻求解决方案。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值