如何在谷歌云上正确托管 node.js 应用程序?

Posted

技术标签:

【中文标题】如何在谷歌云上正确托管 node.js 应用程序?【英文标题】:How to host node.js app on google cloud propertly? 【发布时间】:2019-06-05 16:43:25 【问题描述】:

我正在尝试在谷歌云上托管这个https://github.com/idiidk/kahoot-tools。当我在云外壳中测试它时它可以工作,但是当我部署它时它会崩溃。 当我转到我的应用程序时看到此错误:

错误:服务器错误服务器遇到错误,无法 完成您的请求。请在 30 秒后重试。

在谷歌云中我看到这个错误:

错误:在以下位置找不到模块“express” Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15) 在 Function.Module._load (internal/modules/cjs/loader.js:507:25) 在 Module.require (内部/模块/cjs/loader.js:637:17)在要求 (内部/模块/cjs/helpers.js:22:18)在对象。 (/srv/kahoot-tools.js:8:21) 在 Module._compile (内部/模块/cjs/loader.js:689:30)在 Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10) 在 Module.load (internal/modules/cjs/loader.js:599:32) 在 tryModuleLoad (internal/modules/cjs/loader.js:538:12) 在 Function.Module._load(internal/modules/cjs/loader.js:530:3)

【问题讨论】:

【参考方案1】:

package.json 的“依赖项”中缺少 express 包。只需添加以下内容:

"express": "^4.16.3"

并添加此节点以部署到 App Engine,否则将无法安装依赖项:

"scripts": 
    "start": "node kahoot-tools.js"
  

【讨论】:

以上是关于如何在谷歌云上正确托管 node.js 应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

将 node.js 应用程序部署到谷歌云平台时找不到模块“yargs”错误

谷歌云防火墙暴露端口 Docker

尝试在谷歌云运行上安装日志记录但它失败了

如何在谷歌云上安排 docker 运行

我们可以在谷歌云 ubuntu vm 实例中使用 xampp 作为在线服务器吗

谷歌云构建:在谷歌云存储库上克隆私有存储库失败