ubuntu - 无法在 Google Cloud VM 中打开端口

标签 ubuntu google-cloud-platform google-compute-engine

我通过端口 5000 在具有 16.04 LTS Ubuntu OS 的谷歌云 VM 中托管了一个 Flask API。VM 分配了私有(private) IP 和公共(public) IP,并创建了一个防火墙规则来打开 5000 端口。我可以通过登录到 VM 来访问 API。但是当我尝试使用公共(public) IP 访问它时,我无法做到这一点,并且出现以下错误:-
无法连接到 35.200.001.01 端口 5000:没有到主机的路由
我应该怎么做才能公开公开 API?
已提供防火墙配置截图供您引用。

enter image description here

最佳答案

添加 tcp:5000而不是 all协议(protocol)和端口(这将关闭防火墙)......如果它仍然无法正常工作,请检查实例内部,是否可以访问外部接口(interface)上的端口。 Flask 默认绑定(bind)到 IP 127.0.0.1:5000 - 虽然应该是 0.0.0.0:5000 ,以便人们可以从本地主机、内部和外部接口(interface)访问它。

关于ubuntu - 无法在 Google Cloud VM 中打开端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51941554/

相关文章:

php - 上传 PHP 脚本在 Ubuntu 中不起作用

postgresql - Docker 如何向正在运行的容器添加卷?

Kubernetes secret 加密

ruby-on-rails - 每次我尝试部署时,我都会得到 - (gcloud.preview.app.deploy) 错误响应 : [4] DEADLINE_EXCEEDED

node.js - Google App Engine 中的 session 关联性

selenium - 无法使用 intellij 和 ubuntu 运行 cucumber 场景,实现步骤定义但它们已经实现

python - PyCharm 无法解析 PyGObject 3.0,但代码运行正常

hadoop - 如何在单个文件而不是 Google Cloud 上的 Hadoop 集群中的多个文件中获取 Mapreduce 输出?

google-compute-engine - GCPcompute_engine网络接口(interface)terraform错误

google-compute-engine - 为什么我无法通过其 IP 访问我的 Kubernetes 服务?