美文网首页
rocketmq Docker 部署

rocketmq Docker 部署

作者: 咖啡机an | 来源:发表于2020-07-11 14:16 被阅读0次

1.创建 mq 配置文件 broker.conf

文件放置到 /opt/rocketmq/conf ,配置如下:

brokerName = broker-a  
brokerId = 0  
deleteWhen = 04  
fileReservedTime = 48  
brokerRole = ASYNC_MASTER  
flushDiskType = ASYNC_FLUSH  
# 如果是本地程序调用云主机 mq,这个需要设置成 云主机 IP
#brokerIP1=10.10.101.80 

2.创建如下文件夹:/opt/rocketmq/logs,/opt/rocketmq/store 最后创建 docker-compose.yml 文件

配置如下:

version: '2'
services:
  namesrv:
    image: rocketmqinc/rocketmq
    container_name: rmqnamesrv
    ports:
      - 9876:9876
    volumes:
      - /opt/rocketmq/logs:/home/rocketmq/logs
      - /opt/rocketmq/store:/home/rocketmq/store
    command: sh mqnamesrv
  broker:
    image: rocketmqinc/rocketmq
    container_name: rmqbroker
    ports:
      - 10909:10909
      - 10911:10911
      - 10912:10912
    volumes:
      - /opt/rocketmq/logs:/home/rocketmq/logs
      - /opt/rocketmq/store:/home/rocketmq/store
      - /opt/rocketmq/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf
    #command: sh mqbroker -n namesrv:9876
    command: sh mqbroker -n namesrv:9876 -c ../conf/broker.conf
    depends_on:
      - namesrv
    environment:
      - JAVA_HOME=/usr/lib/jvm/jre
  console:
    image: styletang/rocketmq-console-ng
    container_name: rocketmq-console-ng
    ports:
      - 8087:8080
    depends_on:
      - namesrv
    environment:
      - JAVA_OPTS= -Dlogging.level.root=info   -Drocketmq.namesrv.addr=rmqnamesrv:9876 
      - Dcom.rocketmq.sendMessageWithVIPChannel=false

3.注意点

这里需要注意 rocketmq broker 与 rokcetmq-console 都需要与 rokcetmq nameserver 连接,需要知道 nameserver ip。使用 docker-compose 之后,上面三个 docker 容器将会一起编排,可以直接使用容器名代替容器 ip,如这里 nameserver 容器名 rmqnamesrv。

配置完成之后,运行 docker-compose up -d 启动三个容器,启动成功后,访问 ip:8087,查看 mq 外部控制台,如果可以看到以下信息,rocketmq 服务启动成功。

相关文章

网友评论

      本文标题:rocketmq Docker 部署

      本文链接:https://www.haomeiwen.com/subject/yyhicktx.html