1、拉取镜像
docker pull foxiswho/rocketmq:server-4.3.2
docker pull foxiswho/rocketmq:broker-4.3.2
2、创建nameserver容器
docker create -p 9876:9876 --name rmqserver \
-e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \
-e "JAVA_OPTS=-Duser.home=/opt" \
-v /home/yf/data/rmq/rmqserver/logs:/opt/logs \
-v /home/yf/data/rmq/rmqserver/store:/opt/store \
foxiswho/rocketmq:server-4.3.2
3、创建broker容器
docker create -p 10911:10911 -p 10909:10909 --name rmqbroker \
-e "JAVA_OPTS=-Duser.home=/opt" \
-e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \
-v /home/yf/data/rmq/rmqbroker/conf/broker.conf:/etc/rocketmq/broker.conf \
-v /home/yf/data/rmq/rmqbroker/logs:/opt/logs \
-v /home/yf/data/rmq/rmqbroker/store:/opt/store \
foxiswho/rocketmq:broker-4.3.2
4、配置broker文件
创建配置文件
mkdir -p /data/rmq/rmqbroker/conf
vi broker.conf
#增加
brokerIP1=192.168.56.129
namesrvAddr=192.168.56.129:9876
brokerName=my_broker
4、启动容器
docker start rmqserver rmqbroker
使用Docker搭建RocketMQ集群
1、拉取镜像
docker pull foxiswho/rocketmq:server-4.3.2
docker pull foxiswho/rocketmq:broker-4.3.2
2、创建nameserver容器
nameserver1
docker create -p 9876:9876 --name rmqserver \ -e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \ -e "JAVA_OPTS=-Duser.home=/opt" \ -v /home/yf/data/rmq/rmqserver/logs:/opt/logs \ -v /home/yf/data/rmq/rmqserver/store:/opt/store \ foxiswho/rocketmq:server-4.3.2
nameserver2
docker create -p 9876:9876 --name rmqserver \ -e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \ -e "JAVA_OPTS=-Duser.home=/opt" \ -v /home/yf/data/rmq/rmqserver/logs:/opt/logs \ -v /home/yf/data/rmq/rmqserver/store:/opt/store \ foxiswho/rocketmq:server-4.3.2
3、创建broker容器
master broker01
创建:
docker create --net host --name rmqbroker01 \ -e "JAVA_OPTS=-Duser.home=/opt" \ -e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \ -v /home/yf/data/rmq/rmqbroker01/conf/broker.conf:/etc/rocketmq/broker.conf \ -v /home/yf/data/rmq/rmqbroker01/logs:/opt/logs \ -v /home/yf/data/rmq/rmqbroker01/store:/opt/store \ foxiswho/rocketmq:broker-4.3.2
docker create --net host --name rmqbroker03 \ -e "JAVA_OPTS=-Duser.home=/opt" \ -e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \ -v /home/yf/data/rmq/rmqbroker03/conf/broker.conf:/etc/rocketmq/broker.conf \ -v /home/yf/data/rmq/rmqbroker03/logs:/opt/logs \ -v /home/yf/data/rmq/rmqbroker03/store:/opt/store \ foxiswho/rocketmq:broker-4.3.2
配置:
#创建配置文件 mkdir -p /home/yf/data/rmq/rmqbroker01/conf vi /home/yf/data/rmq/rmqbroker01/conf/broker.conf
namesrvAddr=192.168.1.199:9876;192.168.1.198:9876 brokerClusterName=projectManage brokerName=broker01 brokerId=0 deleteWhen=04 fileReservedTime=48 brokerRole=SYNC_MASTER flushDiskType=ASYNC_FLUSH brokerIP1=192.168.1.199 brokerIp2=192.168.1.199 listenPort=10911
master broker02
创建:
docker create --net host --name rmqbroker02 \ -e "JAVA_OPTS=-Duser.home=/opt" \ -e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \ -v /home/yf/data/rmq/rmqbroker02/conf/broker.conf:/etc/rocketmq/broker.conf \ -v /home/yf/data/rmq/rmqbroker02/logs:/opt/logs \ -v /home/yf/data/rmq/rmqbroker02/store:/opt/store \ foxiswho/rocketmq:broker-4.3.2
配置:
#创建配置文件 mkdir -p /home/yf/data/rmq/rmqbroker02/conf vi /home/yf/data/rmq/rmqbroker02/conf/broker.conf
namesrvAddr=192.168.1.199:9876;192.168.1.198:9876 -p 10929:10909 -p 10921:10911 brokerClusterName=projectManage brokerName=broker02 brokerId=0 deleteWhen=04 fileReservedTime=48 brokerRole=SYNC_MASTER flushDiskType=ASYNC_FLUSH brokerIP1=192.168.1.199 brokerIp2=192.168.1.199 listenPort=10811
slave broker03
创建
docker create --net host --name rmqbroker03 \ -e "JAVA_OPTS=-Duser.home=/opt" \ -e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \ -v /home/yf/data/rmq/rmqbroker03/conf/broker.conf:/etc/rocketmq/broker.conf \ -v /home/yf/data/rmq/rmqbroker03/logs:/opt/logs \ -v /home/yf/data/rmq/rmqbroker03/store:/opt/store \ foxiswho/rocketmq:broker-4.3.2
配置
#创建配置文件 mkdir -p /home/yf/data/rmq/rmqbroker03/conf vi /home/yf/data/rmq/rmqbroker03/conf/broker.conf
namesrvAddr=192.168.1.199:9876;192.168.1.198:9876 brokerClusterName=projectManage brokerName=broker01 brokerId=1 deleteWhen=04 fileReservedTime=48 brokerRole=SLAVE flushDiskType=ASYNC_FLUSH brokerIP1=192.168.1.199 brokerIP2=192.168.1.199 listenPort=10711
slave broker04
创建
docker create -p 10909:10909 -p 10711:10711 --net host --name rmqbroker04 \ -e "JAVA_OPTS=-Duser.home=/opt" \ -e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" \ -v /home/yf/data/rmq/rmqbroker04/conf/broker.conf:/etc/rocketmq/broker.conf \ -v /home/yf/data/rmq/rmqbroker04/logs:/opt/logs \ -v /home/yf/data/rmq/rmqbroker04/store:/opt/store \ foxiswho/rocketmq:broker-4.3.2
配置
#创建配置文件 mkdir -p /home/yf/data/rmq/rmqbroker04/conf vi /home/yf/data/rmq/rmqbroker04/conf/broker.conf
namesrvAddr=192.168.1.199:9876;192.168.1.198:9876 brokerClusterName=projectManage brokerName=broker04 brokerId=1 deleteWhen=04 fileReservedTime=48 brokerRole=SLAVE flushDiskType=ASYNC_FLUSH brokerIP1=192.168.1.198 brokerIP2=192.168.1.198 listenPort=10711
4、启动容器
docker start rmqserver01 rmqserver02
docker start rmqbroker01 rmqbroker02 rmqbroker03 rmqbroker04
评论区