我正在使用云运行。我拉docker映像,然后将它们直接推送到google容器注册表,然后将它们链接到Cloud Run Service。但是,当我尝试部署Cloud Run Service时,我不知道为什么每次都会显示此错误
Cloud Run error: Container failed to start.
Failed to start and then listen on the port defined by the PORT environment variable.
Logs for this revision might contain more information.
请有人给我任何解决方案,实际上是在说我应该更改哪个文件或应该进行哪种更改??
答案 0 :(得分:4)
当您向Cloud Run提供容器映像时,包含的容器必须具有合同才能正常运行。请read that contract,尤其是有关在端口上监听的部分:
在PORT上侦听请求
容器必须在定义的端口上侦听0.0.0.0上的请求 通过PORT环境变量。
在Cloud Run容器实例中,PORT环境变量为 始终设置为8080,但是出于可移植性的原因,您的代码不应 硬编码此值。
您的容器必须正在运行正在监听8080端口或PORT环境变量的端口的进程。如果不这样做,它将无法接收传入的请求。
答案 1 :(得分:1)
即使您已定义好要侦听的端口,这也是当容器不启动时的默认错误消息。
转到日志,看看到底发生了什么。您可以使用正确的消息来解决问题。
答案 2 :(得分:1)
答案 3 :(得分:0)
就我而言,我没有安装一些我需要的软件包。