我正在尝试通过我的应用程序连接到rabbitmq,这两个应用程序都通过docker-compose.yml在容器上运行。
rabbitmq:
image: rabbitmq:3-management
container_name: rabbitmq
hostname: rabbitmq
ports:
- 15672:15672
- 5672:5672
environment:
- RABBITMQ_DEFAULT_USER=guest
- RABBITMQ_DEFAULT_PASS=guest
networks:
- mynetwork
{service}:
container_name: {app}-container
image: {image}
ports:
- 5030:80
build:
context: .
dockerfile: {path}
environment:
- ASPNETCORE_ENVIRONMENT=Development
networks:
- mynetwork这是我如何配置rabbitmq的:
_factory.HostName="rabbitmq";
_factory.User="user";
_factory.Password="password";
_factory.Port=5672;它不工作...我得到这个错误:RabbitMQ.Client.Exceptions.BrokerUnreachableException: None of the specified endpoints were reachable如果我在本地运行我的应用程序的容器并使用127.0.0.1 .Any帮助连接到容器化的rabbitmq,它就可以工作了!
发布于 2021-11-02 13:24:56
如果您的两个容器都在同一组中(下图中的示例),您可以使用其名称(即本例中的https://tyk-pro-docker-demo-tyk-pump-1 )连接到它

在容器内使用127.0.0.1将引用容器本身。一种解决方法是使用带有端口号的host.docker.internal,该端口号使用公开的端口号。
这是出于开发目的,不能在Docker Desktop Windows from docker docs 之外的生产环境中工作
https://stackoverflow.com/questions/69809351
复制相似问题