我正在为Google App Engine开发一个Node.js项目。测试一切正常,该应用程序正常运行,但是当系统提示通过gcloud app deploy
部署我的代码文件时,出现以下错误:
错误:需要部署一个app.yaml(或appengine-web.xml)文件 该目录作为App Engine应用程序
我以前从未使用过Yaml。基本yaml文件的内容应如何解决此问题并部署我的代码?
答案 0 :(得分:3)
您可以在https://docs.ansible.com/ansible/latest/reference_appendices/YAMLSyntax.html中看到,YAML的基本原理很简单,如下所示:
字典-
key: value
列表/数组(1)-
name: - item1 - item2
列表/数组(2)-name: ["item1", "item2"]
嵌套属性(1)-
nest: nestedKey: value nestedList: - item1 - item2
关于您指定的特定YAML文件,请在https://cloud.google.com/appengine/docs/flexible/java/configuring-your-app-with-app-yaml上阅读以获取更多信息。
这是该页面上的一个简单示例:
runtime: java
env: flex
handlers:
- url: /.*
script: this field is required, but ignored
答案 1 :(得分:0)
对于节点,您当前的选项是nodejs10
和nodejs12
:
可接受的运行时为:[php,php55,python27,java,java7,java8, go111,go112,go113,go114,java11,nodejs10,nodejs12,php72,php73, php74,python37,python38,ruby25]
因此,使用节点服务器和标准环境的示例app.yaml
文件将是:
runtime: nodejs12
env: standard
handlers:
- url: /.*
script: auto
请注意,某些版本可能有其他要求,例如:
对于运行时nodejs12,处理程序'/.*'的script字段必须设置为'auto'。