docker compose方式部署rocketmq

年爸 21小时前 ⋅ 12 阅读

1、创建broker.conf文件

vim broker.conf 

brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
# 宿主机ip
brokerIP1 = 10.10.10.10
autoCreateTopicEnable = true
# 配置重试间隔(单位:毫秒/秒,支持 s/m/h/d 后缀)
# 格式:messageDelayLevel = 第1次间隔, 第2次间隔, ..., 第n次间隔
# 默认值:1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h(共18个等级,对应最多16次重试)
messageDelayLevel = 1s 5s 10s 30s 1m 2m 3m 4m 5m

# 配置全局最大重试次数(默认16次,若小于默认次数,以该值为准)
# 注意:此参数在 RocketMQ 4.7+ 版本生效,低版本需通过 messageDelayLevel 长度控制
maxReconsumeTimes = 5

2、创建docker-compose文件

vim docker-compose.yml文件


version: '3.8'

services:
  namesrv:
    image: apache/rocketmq:5.3.3
    container_name: rmqnamesrv
    ports:
      - "9876:9876"
    networks:
      - rocketmq
    command: sh mqnamesrv
    restart: unless-stopped

  broker:
    image: apache/rocketmq:5.3.3
    container_name: rmqbroker
    ports:
      - "10912:10912"
      - "10911:10911"
      - "10909:10909"
    networks:
      - rocketmq
    environment:
      - NAMESRV_ADDR=rmqnamesrv:9876
    volumes:
      - ./broker.conf:/home/rocketmq/rocketmq-5.3.3/conf/broker.conf
    command: sh mqbroker -c /home/rocketmq/rocketmq-5.3.3/conf/broker.conf
    depends_on:
      - namesrv
    restart: unless-stopped

  console:
    image: styletang/rocketmq-console-ng:latest
    container_name: rocketmq-console-ng
    ports:
      - "18080:8080"
    networks:
      - rocketmq
    environment:
      - JAVA_OPTS=-Drocketmq.namesrv.addr=rmqnamesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false
    depends_on:
      - namesrv
      - broker
    restart: unless-stopped

networks:
  rocketmq:
    driver: bridge

3、自行下载镜像

推荐地址:https://docker.aityp.com/


4、启动

docker compose up -d

5、自行放开主机端口
9876、18080、10912、10911、10909

 

 

 


全部评论: 0

    我有话说: