Files
toutoukan/docker/rocketmq/docker-compose.yml
2025-09-15 22:08:11 +08:00

50 lines
1.5 KiB
YAML

version: '3'
services:
# 命名服务
rocketmq-namesrv:
image: apache/rocketmq:5.2.0
container_name: rocketmq-namesrv
ports:
- "9876:9876" # namesrv 默认端口
volumes:
- ./rocketmq/namesrv/logs:/root/logs # 日志挂载
command: sh mqnamesrv # 启动命名服务
networks:
- rocketmq-network
# 消息代理
rocketmq-broker:
image: apache/rocketmq:5.2.0
container_name: rocketmq-broker
ports:
- "10909:10909" # 客户端通信端口
- "10911:10911" # 主从同步端口
volumes:
- ./rocketmq/broker/logs:/root/logs # 日志挂载
- ./rocketmq/broker/store:/root/store # 数据存储挂载
- ./rocketmq/broker/conf/broker.conf:/opt/rocketmq-5.2.0/conf/broker.conf # 配置文件挂载
environment:
- NAMESRV_ADDR=rocketmq-namesrv:9876 # 关联 namesrv 地址
- JAVA_OPTS="-Duser.home=/opt" # 解决路径权限问题
command: sh mqbroker -c /opt/rocketmq-5.2.0/conf/broker.conf # 加载自定义配置启动
depends_on:
- rocketmq-namesrv
networks:
- rocketmq-network
# 控制台
rocketmq-console:
image: apacherocketmq/console:2.0.0
container_name: rocketmq-console
ports:
- "8080:8080" # 控制台访问端口
environment:
- NAMESRV_ADDR=rocketmq-namesrv:9876 # 关联 namesrv 地址
depends_on:
- rocketmq-namesrv
networks:
- rocketmq-network
networks:
rocketmq-network:
driver: bridge