continuous-integration - GCloud:无法监听 env 变量定义的端口
问题描述
我第一次尝试使用以下两个教程在 Google Cloud Platform 上进行部署:
但是,在运行最终命令时gcloud builds submit --config cloudbuild.yaml
,其中cloudbuild.yaml是按照教程的 yaml 文件的名称,会引发以下错误:
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.
解决方案
构建快速入门创建的映像不适用于部署快速入门。后者,使用 Cloud Run 需要在端口 8080 上进行 HTTP 通信。
如果您按原样使用部署快速入门,那应该可以。您可以使用以下方法在本地测试此容器映像:
docker run \
--interactive --tty \
--publish=8080:8080 \
gcr.io/gcbdocs/hello
然后尝试浏览或卷曲端点http://localhost:8080
。你应该看到Hello world!
。
Cloud Run 的错误消息有些笼统,表示出现问题。因此,它通常无济于事。
如果您确信您正在部署一个在端口 8080 上与 HTTP 通信的容器映像,我建议您逐步按照说明来尝试查看哪里出错了。
推荐阅读
- python-3.x - 通过 scapy 配置 STP 协议
- ms-access - 选定的前景色未显示在 Access 组合框中
- python - 通过在 python 中合并其他两个蒙版来创建新的灰度蒙版图像
- php - errore SQLstate 23000 我无法将某些 JSON 值保存到我的数据库中
- asp.net-core-mvc - asp.net core 3.1 Identity - 当引用者是 Stripe 时,在 SignInAsync() 之后重定向到登录
- pytorch - pytorch和tensorflow之间的卷积层填充差异
- laravel - Laravel Hyn 多租户路由搜索所有数据库以获取价值
- python - 转换大型数据集,使其沿不同维度拆分为文件?
- php - 使用 laravel 上传不同类型的文件
- amp-html - amp-lightbox 在另一个 amp-lightbox 上打开