【发布时间】:2021-05-15 23:02:34
【问题描述】:
我目前正在为应用程序部署构建云环境,但在通过 HTTP/S 连接到正在运行的 Node/Express REST API 服务器时遇到了问题。我使用 GCE 作为我的 VM 提供程序,并开始尝试从我的个人机器上测试 API 服务。如果可能的话,我现在想避免使用 Docker Compose,因为我想在习惯 Docker 之后构建 Kubernetes 部署。
另外,我的虚拟机防火墙设置确实允许 HTTP 和 HTTPS 请求进入机器。
我已经能够使用虚拟机的外部 IP SSH 到我的实例并设置一个正在运行的 docker 容器。然后我尝试使用运行命令在 XX.XXX.XX.XXX:81:81 发布相同的端口 443 和 81。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cf3f315dd947 repo/dev-api:latest "docker-entrypoint.s…" 3 minutes ago Up 3 minutes 0.0.0.0:81->81/tcp, 443/tcp api
我想在此之后立即进行 HTTPS 设置,但希望首先解决此 HTTP。我的服务器运行正常,并在 HTTPS 的 443 端口和 HTTP 的 81 端口上侦听(端口 80 导致我的 VM 完全与 SSH 断开连接,但这是另一个问题的主题)。但是,使用我的浏览器直接连接到端口 443 或 81 的外部 IP,使用 https:// 或 http:// 的任意组合,我仍然收到“无法访问此站点”错误。
我也尝试过 ping 虚拟机 - 直接 ping 到外部 IP 时效果很好,但在 IP 前附加 http:// 时不行。
非常感谢您在这方面的帮助 - 感谢您抽出宝贵时间。
【问题讨论】:
-
您的流量已被过滤。你能分享你的防火墙规则吗?
-
@guillaumeblaquiere 感谢您的回复!我回去查看了我的防火墙规则,这些规则在我更改了一些设置后已经过时了。
标签: docker gcc networking google-cloud-platform ip