RabbitMQ的镜像选择是rabbitmq:3.6.15-management
step1. 依次启动三个RabbitMQ的容器
RABBITMQ_ERLANG_COOKIE是配置erlang.cookie的值
.erlang.cookie是erlang实现分布式的必要文件,erlang分布式的每个节点上要保持相同的.erlang.cookie文件,同时保证文件的权限是400。
具体的文件路径在 /var/lib/rabbitmq/.erlang.cookie
docker run -d --hostname rabbit1 --name myrabbit1 -p 8101:15672 -p 8201:5672 -e RABBITMQ_ERLANG_COOKIE='rabbitcookie' rabbitmq:3.6.15-management
docker run -d --hostname rabbit2 --name myrabbit2 -p 8102:15672 -p 8202:5672 --link myrabbit1:rabbit1 -e RABBITMQ_ERLANG_COOKIE='rabbitcookie' rabbitmq:3.6.15-management
docker run -d --hostname rabbit3 --name myrabbit3 -p 8103:15672 -p 8203:5672 --link myrabbit1:rabbit1 --link myrabbit2:rabbit2 -e RABBITMQ_ERLANG_COOKIE='rabbitcookie' rabbitmq:3.6.15-management
step2. 加入RabbitMQ节点到集群
设置节点1:
docker exec -it myra