javascript - 如何远程自动更新 node.js 应用程序

标签 javascript node.js

我需要为基于 nodeJS(而不是 nodeJS 本身)构建的应用程序设置自动远程更新。
在我的具体情况下,我无法将我的应用程序作为 SaaS 进行分发,因此我必须与每个客户共享一个应用程序副本。

我在这里查看了相关主题,但没有找到有用的主题。
这里有几个相关的问题:one , two

我不知道如何设置它,但我有一些想法:


老派方式(?):

  1. 使用 unix cron + shell(或 php)脚本对 «update-server» 进行 «check-request»,
  2. 停止 nodeJS 实例,
  3. 用压缩包中的最新文件替换文件,
  4. 用我的应用程序运行 nodeJS 实例:从 shell(?)

如果我使用自己的服务器,它可能会工作,但是我如何才能在 Heroku 等服务器上做同样的事情?
总的来说,这看起来有点奇怪。


两个 nodeJS 实例方式(?):

  1. 使用 unix cron + 另一个 nodeJS 应用程序检查更新服务器上的更新,
  2. 然后从另一个&&更新文件停止一个 Node 实例
  3. 用我的应用从另一个启动一个 nodeJS 实例:如何???

——这里有别的东西吗?
— 人们如何解决这个问题?
— 例如,如何在 Wordpress 中为基于 nodeJS 的应用程序实现“更新管理器”等功能?

最佳答案

您所说的是 CI(持续集成),有很多工具可以在此过程中为您提供帮助,但它们本质上做的是同一件事。

  1. 检测代码中的更改
  2. 拉取更改
  3. 构建项目
  4. 如果有则运行测试
  5. 部署到服务器

— How do folks solve that problem?

人们使用 Jenkins、bamboo 和许多其他自动部署系统。 如果您将 Node 与 pm2 一起使用,则可以使用具有内置功能的运动学(一键部署功能)

关于javascript - 如何远程自动更新 node.js 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37905785/

相关文章:

javascript - 在初始化之前无法调用可拖动对象上的方法

javascript - javascript中数组的比较

javascript - jQuery 处理元素 id 变化的能力

javascript - 在 Javascript 之前先加载 HTML

Node.js服务器: HTTP POST body is empty

node.js - 代理不适用于 react 和 Node

javascript - jQuery 将类设置为内部 div

javascript - 在 Typescript 单元测试中模拟

javascript - 使用 npm 安装 Handlebars.js 时出现问题

javascript - 要求解决未定义