我在相同的VPC和相同的子网中的ECS中部署了2个服务。 Nice*
依赖于ServiceB
,并尝试通过端口ServiceA
连接到它。该端口已在Docker映像中正确公开,并且4000
正常启动并绑定到端口ServiceA
,但是由于某些原因,在日志中它显示了绑定的神秘IP 4000
,即使我运行ifconfig从容器内部可以看到,分配给容器的唯一IP地址是169.254.A.B
,但是任务在子网范围169.254.A.B
内分配了私有IP,分配给它的公共IP是172.31.C.D
。如果我在本地运行52.14.X.Y
并将其指向ServiceB
,则它将连接。如果我在预期的ECS内使用此端点运行它,也会发生同样的情况。现在,我想摆脱IP地址并使用服务发现,并将52.14.X.Y:4000
配置为名称ServiceA
,可以看到在Route 53中为该区域和该VPC创建了一条记录,但是{{1} }如果将其指向servicea.myproject
,则无法解决该问题。
我的问题是:这个神秘的IP ServiceB
来自哪里,为什么它作为通往公共网络的“桥梁”?为什么服务发现无法按我预期的方式工作?