You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在AWS ECS部署Flask应用遇连接拒绝错误,任务已正常运行

AWS ECS部署Flask应用无法访问的排查方案

1. 检查Flask服务绑定地址

Flask默认仅绑定127.0.0.1,仅容器内部可访问,必须改为0.0.0.0才能对外提供服务:

  • 启动命令确保带--host=0.0.0.0:flask run --host=0.0.0.0 --port=5000
  • 代码里显式设置绑定地址:
    if __name__ == '__main__':
        app.run(host='0.0.0.0', port=5000)
    

2. 核对ECS任务端口映射配置

  • 任务定义中,容器端口(如5000)需与主机端口/ALB监听端口正确映射
  • 若使用awsvpc网络模式:
    • 任务弹性网卡需分配公网IP,或通过ALB转发流量
    • 任务安全组需允许对应端口的入站流量
  • 若使用bridge模式:
    • EC2实例安全组要开放主机映射端口的入站权限
    • 确认容器端口已正确映射到主机端口

3. 重新校验安全组规则

即使已添加规则,再核对以下细节:

  • 入站规则的源地址是否覆盖你的访问IP,或临时用0.0.0.0/0测试
  • 入站规则的端口是否与Flask监听的端口完全一致(比如默认5000,不要填成80/443)
  • 出站规则确保允许容器正常通信(至少允许TCP/IP出站)

4. 验证容器内部端口监听

进入容器执行以下命令,确认Flask进程监听的是0.0.0.0而非仅本地回环:

netstat -tulpn | grep 5000
# 或用ss命令
ss -tulpn | grep 5000

输出应显示类似0.0.0.0:5000,而非127.0.0.1:5000

内容的提问来源于stack exchange,提问作者Arthi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 14:55:15