我尝试使用RabbitMQ启动Docker容器,结果下载了镜像,但容器没有启动。我在日志中收到以下消息:
error: RABBITMQ_DEFAULT_PASS is set but deprecated
error: RABBITMQ_DEFAULT_USER is set but deprecated
error: RABBITMQ_DEFAULT_VHOST is set but deprecated
error: RABBITMQ_ERLANG_COOKIE is set but deprecated
error: deprecated environment variables detected
这个问题是最近出现的,之前一切正常并开始。
这是我的 docker-compose 兔子:
rabbit:
image: "rabbitmq:3-management"
hostname: "rabbit"
environment:
RABBITMQ_ERLANG_COOKIE: 'SWQOKODSQALRPCLNMEQGW'
RABBITMQ_DEFAULT_USER: 'user'
RABBITMQ_DEFAULT_PASS: 'bitnami'
RABBITMQ_DEFAULT_VHOST: '/'
ports:
- "15672:15672"
- "5672:5672"
labels:
NAME: "rabbitmq"
networks:
- postgres
RabbitMQ (3.9) 的最新稳定 docker 镜像最近已更新,官方镜像页面显示:
As of RabbitMQ 3.9, all of the docker-specific variables listed below are deprecated and no longer used.
我已通过以下方式解决了该问题:
-
在docker compose所在的同一文件夹中创建rabbitmq.conf文件
文件存在
-
按照以下指南和命名约定将变量放入其中here https://www.rabbitmq.com/configure.html#config-items。就像是:
default_vhost = /
default_user = user
default_pass = bitnami
-
在 docker compose 文件中,而不是环境部分放一个volumes部分并将rabbitmq.conf文件安装到正确的路径(取决于操作系统,请遵循here https://www.rabbitmq.com/configure.html#customise-environment)。对于 Linux 容器,它会是这样的:
rabbit:
image: "rabbitmq:3-management"
hostname: "rabbit"
volumes:
- "./rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf"
ports:
- "15672:15672"
- "5672:5672"
labels:
NAME: "rabbitmq"
networks:
- postgres
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)