参考 参考 https://blog.csdn.net/m0_47214030/article/details/131358298
mkdir -p /data/rabbitmq_cluster/node/{data,conf,log} chmod -R 777 /data/rabbitmq_cluster/node cat << EOF >/data/rabbitmq_cluster/node/data/.erlang.cookie
LleLHxuTQBrxgR4VnP03Q7 EOF chmod -R 600 /data/rabbitmq_cluster/node/data/.erlang.cookie
每台机器分别执行 node1
docker run -d --name rabbitmq --restart=always --hostname node1 \
-e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 \
-e RABBITMQ_DEFAULT_VHOST=my_vhost \ --privileged=true \
--add-host node2:192.168.2.202 --add-host node3:192.168.2.203 \
-v /data/rabbitmq_cluster/node/data:/var/lib/rabbitmq -v /data/rabbitmq_cluster/node/conf:/etc/rabbitmq -v /data/rabbitmq_cluster/node/log:/var/log/rabbitmq \
-p 4369:4369 -p 5672:5672 -p 15672:15672 -p 25672:25672 \
rabbitmq:management
node2
docker run -d --name rabbitmq --restart=always --hostname node2 \
-e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 \
-e RABBITMQ_DEFAULT_VHOST=my_vhost \ --privileged=true \
--add-host node1:192.168.2.201 --add-host node3:192.168.2.203 \
-v /data/rabbitmq_cluster/node/data:/var/lib/rabbitmq -v /data/rabbitmq_cluster/node/conf:/etc/rabbitmq -v /data/rabbitmq_cluster/node/log:/var/log/rabbitmq \
-p 4369:4369 -p 5672:5672 -p 15672:15672 -p 25672:25672 \
rabbitmq:management
node3
docker run -d --name rabbitmq --restart=always --hostname node3 \
-e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 \
-e RABBITMQ_DEFAULT_VHOST=my_vhost \ --privileged=true \
--add-host node1:192.168.2.201 --add-host node2:192.168.2.202 \
-v /data/rabbitmq_cluster/node/data:/var/lib/rabbitmq -v /data/rabbitmq_cluster/node/conf:/etc/rabbitmq -v /data/rabbitmq_cluster/node/log:/var/log/rabbitmq \
-p 4369:4369 -p 5672:5672 -p 15672:15672 -p 25672:25672 \
rabbitmq:management
设置节点1
docker exec -it rabbitmq /bin/bash
rabbitmq-plugins enable rabbitmq_management # 管理页面插件 r
abbitmqctl stop_app # (rabbitmqctl stop 会将Erlang 虚拟机关闭,rabbitmqctl stop_app 只关闭 RabbitMQ 服务)
rabbitmqctl reset
rabbitmqctl start_app #(只启动应用服务)
exit
设置节点2
docker exec -it rabbitmq bash
rabbitmq-plugins enable rabbitmq_management # 管理页面插件
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@node1
rabbitmqctl start_app(只启动应用服务)
exit
设置节点3
docker exec -it rabbitmq bash
rabbitmq-plugins enable rabbitmq_management # 管理页面插件
rabbitmqctl stop_app
rabbitmqctl reset r
abbitmqctl join_cluster rabbit@node1
rabbitmqctl start_app(只启动应用服务)
exit
2.5、预览结果 节点设置完成之后,在浏览器访问192.168.13.100:15673、192.168.13.100:15674和192.168.13.100:15675中任意一个来查看RabbitMQ Management:
![0](/i/l/?n=24&i=blog/375569/202404/375569-20240428111743385-272427352.png)
![0](/i/l/?n=24&i=blog/375569/202404/375569-20240428111743473-1858270749.png)
![0](/i/l/?n=24&i=blog/375569/202404/375569-20240428111743438-1410919084.png)
![0](/i/l/?n=24&i=blog/375569/202404/375569-20240428111743448-1343807403.png)
![0](/i/l/?n=24&i=blog/375569/202404/375569-20240428111743427-2056053716.png)