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

Cloud Run部署Flask应用仅根路由可用,其他路由返回404的排查求助

Cloud Run部署Flask应用仅根路由可用,其他路由返回404的排查求助

终于把Flask应用部署到Cloud Run了,但碰到个特别诡异的问题:只有根路由/能正常返回结果,其他所有路由比如/healthz和/print_path全都返回404 Not Found!折腾了好半天还是没找到原因,来求助各位大佬!


目前的状态

  • ✅ 正常工作:用curl访问根路由
    curl https://sudicgpt-api-1055692892850.europe-west1.run.app/
    
    能正确返回Root OK,证明服务是活的
  • ❌ 全部失败:访问其他路由
    curl https://sudicgpt-api-1055692892850.europe-west1.run.app/healthz
    curl https://sudicgpt-api-1055692892850.europe-west1.run.app/print_path
    
    都返回404 Not Found

环境与配置详情

基础环境

  • Python版本:3.11,Docker镜像基于python:3.11-slim
  • 部署平台:Google Cloud Run托管式服务,欧洲西部1区
  • 项目文件结构:
    /SudicGPT/
    ├── Dockerfile
    ├── main.py
    └── (其他无关的辅助文件)
    

Dockerfile代码

FROM python:3.11-slim
WORKDIR /app
COPY . .
RUN pip install flask
CMD ["python", "main.py"]

main.py代码(简化测试版,真实代码同样有问题)

因为原应用的路由也不行,我写了个极简版测试:

from flask import Flask

app = Flask(__name__)

@app.route("/")
def root():
    return "Root OK", 200

@app.route("/healthz")
def healthz():
    return {"status": "healthy"}, 200

@app.route("/print_path")
def print_path():
    import os
    return {"cwd": os.getcwd()}, 200

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=8080)

已经试过的排查操作

我已经把能想到的常规操作都试了一遍:

  1. 确认部署的是最新版本的main.py,没有部署旧文件
  2. 用--no-cache参数重新构建Docker镜像,避免缓存问题
  3. 验证Flask监听的是0.0.0.0:8080,允许所有IP访问
  4. 本地运行Docker容器测试:所有路由都能正常返回结果,完全没问题
  5. 检查Cloud Run的部署日志,确认使用的是最新的镜像哈希
  6. 部署命令是:
    gcloud run deploy sudicgpt-api --image gcr.io/sudicgpt/sudicgpt-api --region europe-west1 --platform managed --allow-unauthenticated --port=8080
    

重要更新!本地Docker测试100%正常

刚才我在本地拉取部署用的镜像,运行起来测试:

docker run -it --rm -p 8080:8080 gcr.io/sudicgpt/sudicgpt-api

然后访问本地的/healthz、/print_path都能正常返回预期的JSON结果,说明应用本身完全没问题!问题肯定出在Cloud Run的部署或者环境上?


求助问题

既然本地Docker运行一切正常,为什么到了Cloud Run上就只有根路由能用?会不会是Cloud Run的某个配置我漏了?或者容器在Cloud Run运行时有什么隐藏的限制?还是Flask在Cloud Run环境下有什么特殊的坑?

各位大佬有没有遇到过类似的情况,或者有什么我没考虑到的排查方向?感谢大家的帮助!

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.07 09:34:32