我正在尝试将node.js应用程序部署到appEngine,但他似乎不喜欢我的app.yaml。
D:\projects\Personal\Project>gcloud app deploy
ERROR: (gcloud.app.deploy) An error occurred while parsing file: [D:\projects\Personal\Project\app.yaml]
No URLMap entries found in application configuration
in "D:\projects\Personal\Project\app.yaml", line 10, column 12
这是app.yaml:
runtime: nodejs
env: standard
skip_files:
- ^node_modules$
env_variables:
USER: 'dbUser'
PASSWORD: 'DBPass'
DB: 'URI to DB'
我在这里遗漏了什么吗? 可能是因为我的文件夹结构?
我有以下结构: - 客户 - 服务器 ---- server.js - app.yaml
所以app.yaml不在服务器文件夹中,否则它不包含客户端文件夹......
答案 0 :(得分:6)
现在在标准环境中支持 nodejs8 (目前仍处于beta版),您必须更新本地gcloud环境才能进行部署。更新gcloud组件将使此警告消失。
运行
gcloud components update
更新您的app.yaml文件
有关所需的最基本示例,请参见Google的github:https://github.com/GoogleCloudPlatform/nodejs-docs-samples/blob/master/appengine/building-an-app/build/app.yaml
更新您的package.json
指定适当的兼容节点版本,例如:
"engines": {
"node": ">=8.0.0"
},
完整教程 在App Engine标准环境中构建nodejs8应用程序时:https://cloud.google.com/appengine/docs/standard/nodejs/building-app/
标准环境的部署速度比Flex环境快得多。
答案 1 :(得分:0)