如何解决无法从外部访问正在运行的EC2 Dockerized映像 问题我尝试过的
问题
我无法从EC2实例外部访问正在运行的docker映像。
我尝试过的
- 我在ECS中创建了一个群集,该群集具有相关任务定义和应用程序负载平衡器。
- 执行任务后,我可以在任务中查看来自Docker映像的日志:
- 我还看到相关的EC2实例正在运行。 SSH进入实例时,可以看到docker映像正在按预期运行:
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
af20230498fb <ecr-id>.dkr.ecr.eu-central-1.amazonaws.com/app-be:latest "docker-entrypoint.s…" 11 minutes ago Up 11 minutes 0.0.0.0:32805->5001/tcp ecs-app-task-definition-26-app-be-fcf9ffc3f9dadf80d401
5d59c2b2bcaa amazon/amazon-ecs-agent:latest "/agent" 2 hours ago Up 2 hours (healthy) ecs-agent
当我这样做时:
> curl 0.0.0.0:32805/status
{"message":"OK","timestamp":1598871064086}
但是,当尝试从外部(从EC2实例的公共IP和应用程序负载平衡器DNS)访问同一终结点时,它会超时。
也:Application Load Balancer的/ status的运行状况检查也失败了,因此任务每15分钟重新启动一次。
我们将不胜感激,如果我在菜鸟方面犯了任何错误,我们将不胜感激,因为我对AWS的经验不足,因此请提前
。解决方法
您是配置EC2的安全组还是启动EC2的VPC的NACL?
我看到您在任务中公开了端口5001,因此在SG中,您应该打开该端口
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。