如何使用 runit 来管理我定制的 node.js 服务?

如何使用 runit 来管理我定制的 node.js 服务?

我的服务非常基础,只是一个 HTTP 服务。我只想让它在因错误退出时自动重新启动。我想我可以使用 runit 来做到这一点,但似乎 runit 文档主要讨论如何将整个 init.d 转换为 runit。我想保留 init.d 并只将 runit 用于我的一项服务。

我正在看这些文档

谢谢。

编辑:我认为指向正确的方向,我想我现在只需要知道如何提供服务。

答案1

使用 runit 运行 Node 非常简单。假设您已经在标准目录布局中安装了 runit,请创建目录/service/node-service并放置创建文件/service/node-service/run

#!/bin/sh
chpst -unobody node /path/to/your-service.js

使该运行脚本可执行(chmod +x run),然后您可以通过运行 sudo ./run 对其进行测试。如果您在 Debian 或 Ubuntu 上运行,那么最简单的方法是创建apt-get install runit目录/etc/sv/node-service而不是/service/node-service,然后符号链接/etc/sv/node-service/etc/service/node-service。此外,如果您希望您的服务在除 nobody 之外的用户上下文中运行,则应更改参数-u<username>以反映这一点。

答案2

看一眼永远

相关内容