我正在构建一个应用程序,其中多个Docker services
在ECS container instance
上运行,它们通过RabbitMQ
相互通信,而EC2 instance
在同一个{{ 1}},并在同一子网中。 VPC
安全组被配置为允许来自该子网的所有流量。
但是,当我启动RabbitMQ
并尝试连接到service
时,我得到一个错误,提示RabbitMQ
。这是我正在使用的网址t connect ECONNREFUSED 127.0.0.1:5672
。 amqp://username:password@ipaddr:5672/?heartbeat=60
的网络模式为Docker
。
我正在通过环境变量设置连接URL,然后将default/Bridge
分别放入ssh
容器实例和ECS
容器中,并能够验证是否设置了环境变量。 / p>
答案 0 :(得分:2)
127.0.0.1
不是EC2 RabbitMQ服务器的IP地址。该地址将始终指向运行代码的计算机,即“ localhost”。
您需要使用运行RabbitMQ的EC2服务器的私有IP 。