【问题标题】:Does Google Cloud App Engine have a special Node.js runtime?Google Cloud App Engine 是否有特殊的 Node.js 运行时?
【发布时间】:2019-11-09 13:10:41
【问题描述】:

我尝试使用灵活的 App Engine 在 Google Cloud 上部署我的 Node.js 应用。在我的本地机器上,项目运行没有错误,但在云端,它会产生奇怪的错误

就像那个,我需要require URL 类,否则它是未定义的,而在我的机器上它可以在没有require 的情况下工作。另一个我仍然无法弄清楚的是,当我 Proxy 全局 Promise 对象时,它作为函数返回,但 mongoose 无法加载,因为 global.Promise 不是函数。

我使用的是最新的 Node LTS 版本并使用 Yarn,所以依赖项肯定有正确的版本。是否有我不知道的其他 Node.js 运行时?还是我可以设置的环境设置?

编辑:这些错误发生在构建过程中(也许与它有关?)

【问题讨论】:

  • 奇怪的repl.it/languages/nodejs URL 也是未定义的,尽管文档说它是自版本 10 以来的全球性。
  • 会不会是Linux和Windows版本的区别?我使用的是 Windows,而 GCloud 和 repl.it 是 Linux。
  • 发送至specify runtime, npm, yarn versions 以进行部署以匹配本地测试环境中使用的部署
  • 谢谢,我试试看。

标签: javascript node.js google-app-engine google-cloud-platform


【解决方案1】:

事实证明,Google Cloud Builder 默认不使用最新的节点版本。我需要在cloudbuilder.yaml 中指定它,例如:

steps:
- name: "gcr.io/cloud-builders/yarn:node-10.10.0"
  args: ["install", "--production"]

【讨论】:

    猜你喜欢
    • 2020-04-18
    • 2016-03-20
    • 2021-11-20
    • 1970-01-01
    • 1970-01-01
    • 2020-05-17
    • 2020-09-01
    • 1970-01-01
    • 2014-05-10
    相关资源
    最近更新 更多