rabbitmq docker容器.erlang.cookie未从RABBITMQ_ERLANG_COOKIE envvariables中设置

我正在尝试使用aws容器服务设置rabbitmq集群。 我需要/var/lib/rabbitmq/.erlang.cookie在所有节点上都是相同的。 所以对于我所有的rabbitmq容器运行时,我都会传入一个RABBITMQ_ERLANG_COOKIE环境variables,根据这里的文档https://hub.docker.com/_/rabbitmq/写入/var/lib/rabbitmq/.erlang.cookie

当我检查我的正在运行的容器,我可以看到,环境variablesRABBITMQ_ERLANG_COOKIE=QOKWQHQKXXTBIEAOPWKE存在,但是当我/ cat /var/lib/rabbitmq/.erlang.cookie我得到一个不同的值AYMNAPKRPCPJVPFYAJZX

因此,所有rabbitmq容器都有不同的.erlang.cookie ,不能形成一个集群。

为什么不设置环境variables的cookie? 我可以在这里错过什么?

我正在使用rabbitmq:3.6.9-alpine图片。

我遇到这个线程时search非常类似的问题,但我的环境variables是ERLANG_COOKIE,改变使用RABBITMQ_ERLANG_COOKIE后,它的工作就像一个魅力

这里是我的docker-compose关于rabbitmq,$ {HOST}将被replace为.env文件中设置的值,它与docker-compose.yml位于同一个文件夹中

 rabbitmq: image: rabbitmq:3-management ports: - "15672:15672" - "25672:25672" - "5672:5672" - "4369:4369" environment: - RABBITMQ_ERLANG_COOKIE='takeMyCookies' hostname: "${HOST}" 

看看cookie的价值

 root@prod-03:/# cat ~/.erlang.cookie 'takeMyCookies' root@prod-03:/# cat /var/lib/rabbitmq/.erlang.cookie 'takeMyCookies'