【问题标题】:Old `npm start` script being ran by Google App EngineGoogle App Engine 正在运行旧的“npm start”脚本
【发布时间】:2018-09-25 04:13:54
【问题描述】:

尽管重新部署甚至禁用/重新启用该应用程序,Google App Engine 仍不断尝试从旧版本的应用程序运行 npm start 脚本。我注意到这一点是因为它曾经尝试运行迁移脚本,然后启动服务器。现在是迁移脚本错误,这引起了我的注意。

我已经尝试更新package.json 中的版本号,因为失败的日志指定它正在尝试运行我的应用程序的version 1.0.0。所以我想也许我需要提高版本。

尽管如此,错误日志仍然显示PROJECT_NAME@1.0.0 start: npm run migrate && node src/server.js,这显然是旧的。

我在 Google App Engine 的 Node.js 灵活环境上启动了一个项目,然后切换到标准环境(在我启动该项目后不久发布)。我推测它可能也在尝试运行灵活的环境脚本?但是,我不知道如何让它停止。

哦,还有一个重要的细节:应用程序正在运行,尽管据称在启动时出错。因此,它肯定似乎在尝试运行两个版本,但只有一个成功。

【问题讨论】:

  • 你能不能也分享你的 app.yaml (当然要删除敏感部分)。您能否确认您看到的日志是由您的新版本产生的(通过按版本过滤日志)
  • 嘿!刚才有机会再来看这个问题。我尝试了您在 Twitter 上的建议:twitter.com/steren/status/1042987724918026240。一开始我都很兴奋,因为我有几分钟没有看到它,但后来又发生了。为此,我的 app.yaml 非常简单:gist.github.com/HenrikJoreteg/6149f1bd3911388f293b1d0781baee16
  • 我可能只是想念它,但我看不到按应用版本过滤日志的明显方法。我该怎么做?
  • 我想出了怎么做...是的,它们是在最新版本中制作的。
  • 另外,在 GAE 标准上,您可以删除 inbound_servicesbeta_settings. cloud_sql_instances 属性,这些属性不被标准环境使用

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


【解决方案1】:

原来有一个旧实例在“灵活”环境中运行。

部署在“标准”环境中运行的新“默认”服务似乎不会停止在“灵活”环境中部署的其他版本。

修复涉及打开 Google 的 App Engine 云端控制台,点击“版本”并从“灵活”环境中查找/停止/删除旧版本。

非常感谢 @Steren 帮助我弄清楚发生了什么。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-25
    • 1970-01-01
    • 2019-06-12
    • 2014-10-18
    • 1970-01-01
    • 1970-01-01
    • 2015-10-13
    • 2017-04-25
    相关资源
    最近更新 更多