无法使用Google App Engine上的nodejs应用程序更新虚拟机

当我尝试从gcloud CLI进行部署时,出现以下错误。

Copying files to Google Cloud Storage... Synchronizing files to [gs://staging.logically-abstract-www-site.appspot.com/]. Updating module [default]...\Deleted [https://www.googleapis.com/compute/v1/projects/logically-abstract-www-site/zones/us-central1-f/instances/gae-builder-vm-20151030t150724]. Updating module [default]...failed. ERROR: (gcloud.preview.app.deploy) Error Response: [4] Timed out creating VMs. 

我的app.yaml是:

 runtime: nodejs vm: true api_version: 1 automatic_scaling: min_num_instances: 2 max_num_instances: 20 cool_down_period_sec: 60 cpu_utilization: target_utilization: 0.5 

我login成功,并有正确的项目ID。 我看到在App Engine的云控制台中创build的新版本,但错误是在这之后。

在标准输出日志中,我看到两个实例都与最后一个console.log语句结合起来,在开始监听端口之后放入应用程序,但是在shutdown.log中,我看到“app was unhealthy”,在syslog中,我看到“WARNING :从来没有从应用程序得到健康的回应,但无论如何发送/ _ah /开始查询。“

根据我对使用Google Cloud App Engine的nodejs的经验,我发现“超时创build虚拟机”既不是传统的超时,也不是创build虚拟机。 我发现在服务器启动期间报告了其他的错误 – 在虚拟机创build之后恰好是这样。 所以,我build议检查控制台输出,看它是否告诉你任何东西。

要查看控制台输出:

  • 对于虚拟机实例,然后转到/ your / vm实例并单击所需的虚拟机实例,然后向下滚动并单击“ 串行控制台输出 ”。
  • 对于stdout控制台日志logging,请监视/ your / logs,然后将请求的日志types下拉列表更改为stdout

我在本地运行process.env和在云中运行时发现了不同。 我希望你也find你的解决scheme – 祝你好运!