docker-compose部署RocketMQ

RocketMQ 介绍

RocketMQ 是一个分布式的、支持高吞吐、低延迟的消息队列系统,常用于构建异步通信、事件驱动架构、日志收集、流式处理等场景。

RocketMQ 的核心组件:

  • NameServer:类似注册中心,Broker 启动时会向它注册。
  • Broker:负责接收、存储、转发消息。
  • Producer / Consumer:生产者发送消息,消费者消费消息。
  • Console:可选的 Web 控制台,用于管理 RocketMQ 集群和查看消息状态。

1.编写Docker Compose

version: '3.8'
services:
  namesrv:
    image: apache/rocketmq:5.3.2
    container_name: rmqnamesrv
    ports:
      - 9876:9876
    networks:
      - rocketmq
    command: sh mqnamesrv
  broker:
    image: apache/rocketmq:5.3.2
    container_name: rmqbroker
    ports:
      - 10909:10909
      - 10911:10911
      - 10912:10912
    environment:
      - NAMESRV_ADDR=rmqnamesrv:9876
    depends_on:
      - namesrv
    networks:
      - rocketmq
    command: sh mqbroker
  proxy:
    image: apache/rocketmq:5.3.2
    container_name: rmqproxy
    networks:
      - rocketmq
    depends_on:
      - broker
      - namesrv
    ports:
      - 18080:8080
      - 18081:8081
    restart: on-failure
    environment:
      - NAMESRV_ADDR=rmqnamesrv:9876
    command: sh mqproxy
  dashboard:
    image: apacherocketmq/rocketmq-dashboard:latest
    container_name: rmqdashboard
    ports:
      - 18088:8080
    environment:
      - JAVA_OPTS=-Drocketmq.namesrv.addr=rmqnamesrv:9876
    networks:
      - rocketmq
    depends_on:
      - namesrv
networks:
  rocketmq:
    driver: bridge

2.启动RocketMQ 集群

docker-compose up -d

本文来自博客园,转载请注明原文链接:https://www.cnblogs.com/zhaohaiqi/p/19044239

posted @ 2025-08-18 10:43  DevOps_node  阅读(78)  评论(0)    收藏  举报