4

我创建了一个 GCP VM 实例,选项Deploy as Container指向我的私有 GCR(nginx 自定义)中的图像。

同样在创建实例时,我已经允许“https”和“http”流量。

虽然应用程序运行良好,但在通过连接实例ssh并检查 docker 容器(docker ps)时,我看到容器端口没有暴露。想知道这里的容器如何通过实例处理 http/https 请求?

4

2 回答 2

7

当您在 GCE 中使用部署容器选项时,它运行 docker 并可以访问主机网络。

从相关的gcp 文档

容器化虚拟机启动容器时将网络设置为主机模式。容器共享主机网络堆栈,并且来自主机的所有接口都可用于容器。

有关不同网络模式的更多详细信息,请点击此处

于 2018-03-19T22:12:03.100 回答
0

除了@Stefan R 所说的,您还应该使用大于 1000 的端口号,因为自动部署的容器映像不是以 root 身份运行的,因此无法访问特权端口。

https://www.staldal.nu/tech/2007/10/31/why-can-only-root-listen-to-ports-below-1024/

https://www.google.co.in/search?q=privileged+ports+linux&oq=privileged+ports+linux

于 2018-05-26T00:00:35.247 回答