AWS ECS奇怪的docker行为

我对亚马逊的EC2服务相当陌生,对于我从中得到的奇怪行为感到茫然。
我有一个Docker镜像,在本地运行时运行得非常完美。 我已经将其上传到存储库,并将其定义为在EC2中运行集群/服务/任务定义。
当我试图蜷缩到我正在运行的服务时,我被告知连接被拒绝(因为我假设端口未被正确打开或映射)。
如果我使用ssh进入Amazon EC2并使用-p 1200:1200标志手动启动映像,它将再次运行而不会出现问题,并且可以无错地curl。

除此之外,当我尝试从amazon自动部署的映像中检索日志时,它们是空的。
在EC2上本地或手动运行时,日志存在且正确。 我的入站和出站规则不是我所知道的问题,而且我所知道的端口映射也是正确设置的。

我已经包含了所有描述的行为的屏幕截图,以及我的Dockerfile的副本。

停止亚马逊的运行图像,并用-p 1200:1200手动启动:(在这样做后,我的服务响应curl)

图像正在手动运行

这样做的日志:

日志从手动运行

运行图像的EC2空日志:

从ec2运行日志

入境规则:

入境规则

出站规则:

出站规则

端口映射:

端口映射

Dockerfile:

FROM thedarbear/facerec EXPOSE 1200 RUN mkdir -p /facerec WORKDIR /facerec COPY . /facerec RUN cd /facerec CMD python3 -u server.py 

当地检查:

https://pastebin.com/7Y48ukqa

ec2检查:

https://pastebin.com/EdJRSEpi

任何洞察到为什么发生这将不胜感激!

我看到在列出的docker图像的差异。

ECS正在运行读取<none>并且您正在手动运行latest

所以,更新您的任务定义添加:latest图像领域的:latest 。 然后更新您的服务以使用该任务定义。

此外,手动删除有问题的图像docker rmi -f 4e1b63e39c66