我正在尝试将nodejs项目部署到Google Cloud,并在进入gcloud app deploy后在Google Cloud SDK Shell中收到以下错误。 在部署之前,我已完成以下操作。 (我概述了引用块中的步骤,因为下面的代码存在一些奇怪的格式问题,它实际上并没有从任何地方引用)。非常感谢!
- 在Google Cloud中创建了一个项目
- 在与app.js相同的文件夹中创建了app.yaml。我为app.yaml
指定了运行时:nodejs和env:flex- 我将端口设置为8080并添加"开始":"节点app.js",添加到package.json
- 我打开Google Cloud SDK Shell然后输入:gcloud auth login。然后我输入了gcloud配置项目并输入了我的项目ID。 然后我输入了:gcloud app deploy。
醇>
WARNING: Automatic app detection is deprecated and will soon be removed.
As an alternative, create an app.yaml file yourself using the directions at
https://cloud.google.com/appengine/docs/flexible/python/configuring-your-app-
with-app-yaml (App Engine Flexible Environment) or
https://cloud.google.com/appengine/docs/standard/python/config/appref (App
Engine Standard Environment) under the tab for your language.
Deployment to Google App Engine requires an app.yaml file. This
command will run `gcloud beta app gen-config` to generate an app.yaml for you in
the current directory (if the current directory does not contain an App Engine
service, please answer "no").
答案 0 :(得分:0)
我通过将文件提交到本地存储库来修复它。我真的不知道为什么,但这是我改变的唯一一件事,它起作用了。
答案 1 :(得分:0)
您使用的gcloud app deploy
部署命令未指定要部署的服务的app.yaml
。根据调用上下文/环境,用于检测(或生成)文件的自动逻辑并不总是产生用户可能期望的结果,因此警告。
修复(和一般建议)将始终在部署命令中指定文件(而不是依赖于不是100%可靠的自动检测/生成),如下所示:
gcloud app deploy [path_to/]app.yaml