AWS EC2实例中Docker部署的Flask应用外部无法访问求助
问题描述
本人并非AWS或网络/服务器领域专家,以下描述若有疏漏敬请谅解。
目前在AWS EC2实例的Docker容器中运行了一个Flask应用:
- EC2实例基于Amazon Linux 2023 AMI,采用ARM64架构(与Mac上创建的Docker容器匹配)
- Docker容器运行Ubuntu 22.04和Python 3.10.12
遇到的问题:
- 本地浏览器访问EC2实例的公网IPv4地址(无论是否带
:8000端口、使用HTTP或HTTPS协议)均无法打开应用 - 通过SSH登录EC2实例后执行
curl localhost:8000,可以正常获取完整的HTML文档,因此判断问题出在EC2而非Docker层面
当前EC2安全组配置:
- 出站规则:全部类型、协议、端口范围,目标地址
0.0.0.0/0 - 入站规则:包含HTTP>TCP>80、HTTPS>TCP>443、SSH>TCP>22,来源均为
0.0.0.0/0
解决方案
添加安全组入站规则,允许TCP端口8000、来源0.0.0.0/0的流量,即可解决无法访问的问题。感谢Andres提供的解决方案。
内容的提问来源于stack exchange,提问作者magnawhale
相关产品推荐
相关产品推荐

