我创建了一个GCP VM实例,选项Deploy as Container
指向我私有GCR中的图像(nginx自定义)。
同时在创建实例时,我已经允许“https”和“http”流量。
虽然应用程序运行正常,但是通过ssh
连接实例并检查docker容器
(docker ps
)
我看到容器端口没有暴露。想知道如何通过实例在这里通过容器处理http / https请求?
答案 0 :(得分:3)
当您在GCE中使用部署容器选项时,它会运行docker并具有对主机网络的访问权限。
来自相关的gcp docs:
容器化VM启动容器,网络设置为主机模式。 容器共享主机网络堆栈,以及来自的所有接口 主机可用于容器。
有关不同网络模式here的详细信息。
答案 1 :(得分:0)
除了@Stefan R所说的,你还应该使用大于1000的PORT号码,因为自动部署的容器映像不能以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