我试图使用以下配置运行rabbitmq服务:
version: '3.9'
services:
rabbit-mq:
container_name: rabbitmq
image: rabbitmq:3-management
environment:
RABBITMQ_DEFAULT_USER: ${RABBITMQ_DEFAULT_USER}
RABBITMQ_DEFAULT_PASS: ${RABBITMQ_DEFAULT_PASS}
RABBITMQ_DEFAULT_VHOST: 'test'
ports:
- '5672:5672'
- '15672:15672'
networks:
monorepo:
gateway:
container_name: gateway
environment:
- APP_PORT=${GATEWAY_MS_PORT}
build:
context: .
args:
- APP_NAME=monorepo-project
ports:
- ${GATEWAY_MS_PORT}:${GATEWAY_MS_PORT}
networks:
monorepo:
user-microservice:
container_name: user-microservice
environment:
- APP_PORT=${USER_MS_PORT}
build:
context: .
args:
- APP_NAME=user-microservice
ports:
- ${USER_MS_PORT}:${USER_MS_PORT}
networks:
monorepo:
depends_on:
- user-microservice-db
user-microservice-db:
image: mysql:latest
container_name: user-microservice-db
environment:
MYSQL_ROOT_PASSWORD: ${USER_MS_MYSQL_PASSWORD}
MYSQL_DATABASE: ${USER_MS_MYSQL_DATABASE}
ports:
- ${USER_MS_MYSQL_PORT}:${INTERNAL_DB_PORT}
networks:
monorepo:
networks:
monorepo:但是,rabbitmq服务给出了以下错误:
2022-04-03 12:59:28.937375+00:00 [info] <0.1164.0> closing AMQP connection <0.1164.0> (172.31.0.5:37026 -> 172.31.0.3:5672)
2022-04-03 12:59:30.941567+00:00 [info] <0.1171.0> accepting AMQP connection <0.1171.0> (172.31.0.5:37028 -> 172.31.0.3:5672)
2022-04-03 12:59:30.947123+00:00 [error] <0.1171.0> Error on AMQP connection <0.1171.0> (172.31.0.5:37028 -> 172.31.0.3:5672, state: starting):
2022-04-03 12:59:30.947123+00:00 [error] <0.1171.0> PLAIN login refused: user 'guest' - invalid credentials如果没有默认用户并将其传递,它将按预期的方式工作。最近几天,我一直在寻找解决方案,并尝试了谷歌的所有建议。
此外,使用我的RABBITMQ_DEFAULT_USER和RABBITMQ_DEFAULT_PASS,我可以登录到管理插件没有任何问题。
我的.env文件:
#RABBITMQ CONFIG
RABBITMQ_DEFAULT_USER=monorepo
RABBITMQ_DEFAULT_PASS=monorepo
RABBITMQ_PORT=5672
RABBITMQ_URL=rabbitmq
RABBITMQ_QUEUE=users发布于 2022-04-28 10:29:13
我不知道为什么,但是default_pass没有出现在/etc/rabbitmq.conf中。对我来说,解决办法是:
删除environments
mkdir ./rabbit_config
touch ./rabbit_config/rabbitmq.conf
./rabbit_config/rabbitmq.conf中的
default_user = username
default_pass = passworddocker-compose.yml:中添加
volumes:
- ./rabbit_config/rabbitmq.conf:/etc/rabbitmq/conf.d/advanced.confdocker-compose down & docker-compose up -dusername,password成为有效的凭证。
最重要的是,环境只是无缘无故地开始工作。
发布于 2022-04-09 00:41:13
在3.8之后,您正在使用的环境变量不再受支持。
警告:从RabbitMQ 3.9开始,下面列出的所有特定于坞的变量都不再受欢迎,不再使用。请使用配置文件;请访问rabbitmq.com/配置以了解有关配置文件的更多信息。作为起点,3.8图像将打印出它从提供的环境变量生成的配置文件。
在/etc/rabbitmq/definitions.json中使用这样的东西
{
"rabbit_version": "3.9",
{
"name": "test12",
"password_hash": "kI3GCqW5JLMJa4iX1lo7X4D6XbYqlLgxIs30+P6tENUV2POR,
"hashing_algorithm": "rabbit_password_hashing_sha256",
"tags": "administrator"
}
],
"vhosts": [
{
"name": "\/"
},
],
"permissions": [
{
"user": "local_jobs",
"vhost": "\/",
"configure": ".*",
"write": ".*",
"read": ".*"
}
],
"parameters": [],
"policies": [],
"queues": [],
"exchanges": [],
"bindings": []
}然后将./rabbitmq/definitions.json:/etc/rabbitmq/definitions.json:ro添加到您的停靠库中的卷中-Compose.yaml。
用户名和密码是test12。
https://stackoverflow.com/questions/71726192
复制相似问题