在Node.JS应用程序的应用程序配置中找不到URLMap条目

时间:2017-05-04 12:45:50

标签: node.js google-app-engine gcloud app.yaml

我正在尝试将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不在服务器文件夹中,否则它不包含客户端文件夹......

2 个答案:

答案 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)

AppEngine中没有nodejs的标准环境。

您必须使用env: flex

请参阅this

相关问题