无法在GAE上部署node.js应用程序
我在将我的node.js应用程序部署到GAE时遇到问题。
这是一个连接到我的Firebase并更新价值的简单应用程序。 刚刚开始。
每当我尝试部署应用程序失败。 在当地运行良好。
我删除了我的项目,并开始一个新的,下载zip后部署默认的“hello-world”应用程序,它工作正常。
我通过云壳在项目上安装了firebase。
添加
var Firebase = require("firebase");
到app.js文件,它不再部署。
我是GAE的新手,无法理解为什么它不会部署。 我觉得如果在应用程序中包含Firebase时遇到麻烦,我会遇到困难。
这是我得到的错误。 唯一的想法,我已经添加到原始的hello世界的应用程序是firebase的依赖。 我删除它,它部署再次罚款。
更新服务[默认] …失败。 错误:(gcloud.preview.app.deploy)错误响应:[13]启动虚拟机时超时。 应用程序代码可能是不健康的。 (0/2准备好,2仍在部署)。
任何帮助将不胜感激。
我通过再次在本地机器上安装firebase npm来解决了这个问题。 我注意到,当我在服务器上安装它时(即使使用–save),由于某种原因它没有更新package.json文件,也没有在本地更新它。 但是它仍然在我的本地机器上运行,没有提到firebase的依赖。 不知道为什么会这样。
现在似乎在工作。
在您需要“firebase”包之前,您需要安装它。
要使用命令行安装最新版本的软件包,请执行以下操作:
- 导航到项目根目录
- 运行
npm install --save firebase
现在,您将拥有安装在应用中的Firebase以及所有依赖的软件包。
--save
参数使命令将程序包安assembly置保存到package.json
文件中,以便在运行npm install
命令在另一台计算机上设置项目时或在将应用程序部署到Google时安装程序包App Engine。
您可以检查日志是否有错误。 要检查它在谷歌控制台(console.cloud.google.com)转到您的项目,然后菜单 – >日志。
通常这个错误发生在应用程序在部署时无法启动。 第一次检查应用程序的本地环境。 如果工作正常,那么检查是否需要设置任何环境variables,而不是在云上正确设置。