一、创建相关文件夹
mkdir -p ~/docker/rocketmq/data
cd ~/docker/rocketmq/data
mkdir logs
mkdir store
mkdir -p broker/conf
mkdir -p broker/logs
mkdir -p broker/store
二、创建 docker-compose.yml
vim ~/docker/rocketmq/data/broker/conf/broker.conf
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/broker/logs:/opt/logs
- ./data/broker/store:/opt/store
- ./data/broker/conf/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: apacherocketmq/rocketmq-dashboard
container_name: rmq-dashboard
ports:
- 8180:8080
environment:
JAVA_OPTS: "-Drocketmq.namesrv.addr=rmqnamesrv:9876"
depends_on:
- rmqnamesrv
networks:
rmq:
aliases:
- rmq-dashboard
networks:
rmq:
name: rmq
driver: bridge
三、创建 broker.conf
vim ~/docker/rocketmq/data/broker/conf/broker.conf