RocketMQ 之使用docker-compose安装指南
一、确保服务器已经安装了docker,docker compose查看docker安装情况:二、部署RocketMq1,先创建好几个文件夹,用来放日志和配置:cd /usr/local/zxl/rocketmqmkdir rocketmqcd rocketmqmkdir datacd datamkdir logs store brokerconfcd brokerconfvi broker.con
·
一、确保服务器已经安装了docker,docker compose
查看docker安装情况:
二 、部署RocketMq
1,先创建好几个文件夹,用来放日志和配置:
cd /usr/local/zxl/rocketmq
mkdir rocketmq
cd rocketmq
mkdir data
cd data
mkdir logs store brokerconf
cd brokerconf
vi broker.conf
2, 配置 broker.conf
内容如下:
brokerClusterName=zxl-rmqCluster
brokerName=broker-a
brokerId=0
# 修改为你宿主机的 IP
# 这个很有讲究 如果是正式环境 这里一定要填写内网地址(安全)
# 如果是用于测试或者本地这里建议要填外网地址,因为你的本地代码是无法连接到阿里云内网,只能连接外网
brokerIP1=172.168.3.100
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
# Broker 对外服务的监听端口,
listenPort=10911
deleteWhen=04
# 文件回收120h
fileReservedTime=120
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=300000
diskMaxUsedSpaceRatio=88
maxMessageSize=65536
# Broker角色
# - ASYNC_MASTER 异步复制Master
# - SYNC_MASTER 同步双写Master
# - SLAVE
brokerRole=ASYNC_MASTER
# 刷盘方式
# - ASYNC_FLUSH 异步刷盘
# - SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
配置说明:参考官网文档
3, 创建docker-compose.yml
cd /usr/local/zxl/rocketmq &&
vi docker-compose.yml
docker-compose.yml
内容如下:
version: '3.5'
services:
rmqnamesrv:
image: foxiswho/rocketmq:server
container_name: rmqnamesrv
ports:
- 9876:9876
volumes:
- ./data/logs:/opt/logs
- ./data/store:/opt/store
networks:
rmq:
aliases:
- rmqnamesrv
rmqbroker:
image: foxiswho/rocketmq:broker
container_name: rmqbroker
ports:
- 10909:10909
- 10911:10911
volumes:
- ./data/logs:/opt/logs
- ./data/store:/opt/store
- ./data/brokerconf/broker.conf:/etc/rocketmq/broker.conf
environment:
NAMESRV_ADDR: "rmqnamesrv:9876"
JAVA_OPTS: " -Duser.home=/opt"
JAVA_OPT_EXT: "-server -Xms128m -Xmx128m -Xmn128m"
command: mqbroker -c /etc/rocketmq/broker.conf
depends_on:
- rmqnamesrv
networks:
rmq:
aliases:
- rmqbroker
rmqconsole:
image: styletang/rocketmq-console-ng
container_name: rmqconsole
ports:
# 9000供外部控制台访问界面使用
- 9000:8080
environment:
JAVA_OPTS: "-Drocketmq.namesrv.addr=rmqnamesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false"
depends_on:
- rmqnamesrv
networks:
rmq:
aliases:
- rmqconsole
networks:
rmq:
name: rmq
driver: bridge
PS:
1、rocketmq:server
MQ的服务
2、rocketmq:broker
Mq的中间件
3、rocketmq-console-ng
Mq的可视化控制台
运行:docker-compose up
访问 http://外网ip或域名:9000
界面如下:
到此 单机部署完毕!
附:
更多推荐
已为社区贡献3条内容
所有评论(0)