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

Streamlit机器学习预测工具部署GCP Cloud Run后持续连接故障求助

Streamlit应用部署Cloud Run卡"Connecting/Running"问题解决指南

核心定位

本地Docker运行正常但Cloud Run部署后异常,说明问题出在Cloud Run配置或Streamlit启动参数上,和缓存无关。以下是具体排查和解决步骤:

1. 修正Streamlit启动命令的端口配置

Cloud Run强制要求容器监听8080端口,本地默认的8501端口在Cloud Run环境下无法被外部访问。必须在启动命令中指定端口和监听地址:

  • 正确启动命令示例:
streamlit run your_app.py --server.port=8080 --server.address=0.0.0.0
  • 把该命令写入Dockerfile的CMD/ENTRYPOINT,比如:
CMD ["streamlit", "run", "app.py", "--server.port=8080", "--server.address=0.0.0.0"]

2. 同步Cloud Run的端口设置

部署Cloud Run时,在"容器、变量、秘密和连接"的容器配置里,确保"容器端口"设置为8080,和Streamlit监听的端口完全一致。

3. 调整Cloud Run资源分配

如果你的机器学习模型体积较大,默认的0.5CPU/256MB内存可能不足以支撑启动,建议调整为:

  • CPU:1核及以上
  • 内存:2GB及以上
    部署时在Cloud Run控制台的"容器、变量、秘密和连接" -> "容器" -> "资源限制"中修改。

4. 查看Cloud Run日志排查启动错误

进入Cloud Run服务详情页的"日志"标签,查看容器启动阶段的报错信息:

  • 检查是否有依赖缺失(比如镜像构建时遗漏了某些Python包)
  • 确认是否有权限问题(比如访问GCS存储的模型文件时缺少权限)

5. 在GCP环境测试镜像有效性

用Cloud Shell拉取Artifact Registry中的镜像,本地运行测试:

docker pull [你的镜像地址,比如us-central1-docker.pkg.dev/项目ID/仓库名/镜像名:标签]
docker run -p 8080:8080 [你的镜像地址]

通过Cloud Shell的Web预览功能访问http://localhost:8080,验证镜像在GCP环境下是否能正常运行,排除镜像本身的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 09:34:58