[英]Node app at Google app engine can't access Redis sentinel
[英]Google Cloud App Engine - NestJS App deploys fine and runs instance, but can't access it
我正在尝试在 Google App Engine 上托管 NestJS 应用程序。 在对我的 GitHub 存储库执行某些操作后,我正在使用 Cloud Build 将应用程序部署到 App Engine 中。
一切顺利; 应用程序构建并部署到 App Engine。 甚至为所述部署创建了一个实例。 但是,我似乎无法访问分配给我托管应用程序的服务的主机。 我不明白为什么 App Engine 的测试 NodeJS 项目运行得很好。 这是我尝试访问端点时得到的。
应用程序.yaml
runtime: nodejs16
instance_class: F4
service: rest
cloudbuild.yaml
steps:
- name: node:16.0.0
entrypoint: npm
args: ["install"]
- name: node:16.0.0
entrypoint: npm
args: ["run", "build"]
- name: "gcr.io/cloud-builders/gcloud"
args: ["app", "deploy", "-v", "20220628t175507"]
timeout: "1600s"
我不明白我做错了什么。 仅供参考,该应用程序只是一个 REST API 应用程序,仅用于发出请求。
GAE 文档不会告诉您这一点(在谈论app.yaml
的environment_variables
时,他们会稍微暗示一下,但没有明确表示)。
确保您的 Nest 应用程序指向的端口是process.env.PORT
,因为 GAE 会自动为您的应用程序设置可用的最佳端口。 由于我为端口分配了一个静态值,因此它不会运行。
基本变了:
app.run(3000);
至:
app.run(process.env.PORT);
运行最新版本,一切正常。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.