Autorun

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

  • January 16, 2011

我的服務非常基礎,只是一個 HTTP 服務。我只是希望它在由於錯誤而退出時自動重新啟動。我想我可以使用 runit 來執行此操作,但似乎 runit 文件主要討論如何將整個 init.d 轉換為 runit。我想保留 init.d 並將 runit 用於我的一項服務。

我在看這些文件

謝謝。

編輯:我認為指向了正確的方向,我想我現在只需要知道如何提供服務。

使用 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 上執行,而不是從原始碼安裝 runit,最簡單的方法是apt-get install runit創建目錄/etc/sv/node-service而不是 . /service/node-service,然後符號連結/etc/sv/node-service/etc/service/node-service. 此外,如果您希望您的服務在非nobody 使用者的上下文中執行,您應該更改-u<username>參數以反映這一點。

引用自:https://serverfault.com/questions/223139