一、搭建MQ集群
拉取镜像:docker pull rabbitmq:management
查看镜像:docker images
现在创建一个网络名为 rabbtimanet 且driver为bridge的网络:(默认创建的就是bridge)
docker network create rabbtimanet (通讯)
查看网络 docker network ls
删除网络 docker network rm rabbtimanet
移除所有无用的网络:docker network prune
显示现有网络的详细信息 docker inspect [OPTIONS] NAME|ID [NAME|ID…]
创建三节点rabbitmq容器
docker run -d --name=rabbitmqA -p 5672:5672 -p 15672:15672 -e
RABBITMQ_NODENAME=rabbitmqA -e RABBITMQ_ERLANG_COOKIE=‘YZSDHWMFSMKEMBDHSGGZ’ -h
rabbitmqA --net=rabbtimanet docker.io/rabbitmq:management
docker run -d --name=rabbitmqB -p 5673:5672 -p 15673:15672 -e
RABBITMQ_NODENAME=rabbitmqB -e RABBITMQ_ERLANG_COOKIE=‘YZSDHWMFSMKEMBDHSGGZ’ -h
rabbitmqB --net=rabbtimanet docker.io/rabbitmq:management
docker run -d --name=rabbitmqC -p 5674:5672 -p 15674:15672 -e
RABBITMQ_NODENAME=rabbitmqC -e RABBITMQ_ERLANG_COOKIE=‘YZSDHWMFSMKEMBDHSGGZ’ -h
rabbitmqC --net=rabbtimanet docker.io/rabbitmq:management
查看运行的容器ID:docker ps
查看所有的容器ID:docker ps -a
进入容器 docker exec -it 容器id /bin/bash
进入容器查看配置文件 vi /etc/rabbitmq/rabbitmq.config
加入集群:分别进入rabbitmqB 和rabbitmqC容器(docker exec -it 容器id /bin/bash),分
别执行以下命令:
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster --ram rabbitmqA@rabbitmqA
rabbitmqctl start_app
退出集群:进入容器 docker exec -it 容器id /bin/bash
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl start_app