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

GCP VM上Docker部署的Streamlit应用外部URL无法访问求助

GCP虚拟机Docker部署Streamlit应用外部URL无法访问问题解决

问题描述

在GCP虚拟机上通过Docker构建并部署Streamlit应用后,运行容器时会显示网络URL和外部URL,但外部URL无法加载,已排查排除防火墙问题。本地URL和同网络内的网络URL均可正常访问,需使用外部URL分享给本地网络外的用户。直接运行streamlit run streamlit_app.py时,应用在本地及同网络内可正常访问。

当前使用的启动命令:

$ docker run -p 8501:8501 streamlit_app_v1:latest

或

$ docker run -p 8501:8501 <docker_image_id>

解决方案

  • 指定Streamlit绑定0.0.0.0:Docker容器内的Streamlit默认可能仅绑定127.0.0.1,导致外部无法访问。修改启动命令,在容器内指定Streamlit监听所有网卡:

    $ docker run -p 8501:8501 streamlit_app_v1:latest streamlit run --server.address 0.0.0.0 streamlit_app.py
    

    或者在构建Docker镜像时,在Dockerfile中加入启动参数:

    CMD ["streamlit", "run", "--server.address", "0.0.0.0", "streamlit_app.py"]
    
  • 检查GCP虚拟机外部IP配置:确保GCP虚拟机已分配静态外部IP,再次确认VPC防火墙规则允许8501端口的入站流量。

  • 验证端口映射状态:在GCP虚拟机上执行netstat -tulpn | grep 8501,确认宿主机的8501端口已被正确监听并映射到容器端口。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 09:45:32