Autorun
如何使用 runit 管理我的定制 node.js 服務?
我的服務非常基礎,只是一個 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>
參數以反映這一點。