📜  如何将 node-red 部署为窗口服务 - Javascript (1)

📅  最后修改于: 2023-12-03 15:09:06.224000             🧑  作者: Mango

如何将 Node-RED 部署为 Windows 服务

在 Windows 环境下,可以使用 NSSM 工具将 Node-RED 部署为一个 Windows 服务。这样,Node-RED 就可以在后台自动运行,且在系统启动时自动启动。

以下是具体的部署步骤:

1. 下载 NSSM 工具

NSSM 是一个免费的工具,可以将任何可执行文件(例如 Node.js 应用程序)包装为 Windows 服务。可以在 NSSM 的官方网站 https://nssm.cc/download 下载到最新的 Windows 安装程序。

2. 安装 Node.js

如果还没有安装 Node.js,则需要先在 Windows 上安装 Node.js。

可以在 Node.js 的官方网站 https://nodejs.org/zh-cn/ 下载到最新的 Windows 安装程序。

3. 安装 Node-RED

在 Windows 环境下安装 Node-RED 可以通过 npm 命令执行以下命令:

npm install -g --unsafe-perm node-red
4. 创建 Node-RED 配置文件

在 Node-RED 的安装目录下,创建一个 settings.js 文件,并编写以下内容:

module.exports = {
    uiPort: 1880,
    credentialSecret: 'a-secret-key',
    adminAuth: {
        type: "credentials",
        users: [{
            username: "admin",
            password: "password",
            permissions: "*"
        }]
    },
    httpNodeAuth: {
        user: "user",
        pass: "password"
    },
    https: {
        key: "/path/to/key.pem",
        cert: "/path/to/cert.pem"
    },
    functionGlobalContext: {
        myGlobal: "variable"
    }
}

其中,uiPort 指定 Node-RED 的 UI 服务端口,默认为 1880credentialSecret 指定加密密钥;adminAuth 指定用户认证信息;httpNodeAuth 指定 HTTP 节点的基本认证信息;https 指定 HTTPS 配置和证书文件路径;functionGlobalContext 可用于指定全局上下文变量。

5. 创建 Node-RED 服务

在 NSSM 安装目录下,有一个 nssm.exe 可执行文件,执行以下命令:

nssm install Node-RED

这里 Node-RED 是服务的名称,可以自定义。输入上述命令后,会出现 NSSM 的“Application”选项页面。

在该页面的“Path”选项中,输入 Node-RED 的启动脚本路径,例如:

C:\Program Files\nodejs\node-red.cmd

在“Arguments”选项中,输入 Node-RED 的参数,例如:

-p "C:\Program Files\nodejs\node_modules\node-red" -s "C:\Program Files\nodejs\node_modules\node-red\settings.js"

然后单击“Install service”按钮开始创建服务。此时,将在 Windows 服务列表中创建一个新服务。

6. 启动 Node-RED 服务

在 Windows 服务列表中,找到刚刚创建的 Node-RED 服务,右键单击选择“启动”,即可启动 Node-RED 服务。

至此,Node-RED 已成功部署为 Windows 服务。现在,您可以通过浏览器访问 Node-RED 的 Web 界面,开始使用它了。

参考文献:

  • https://nssm.cc/usage
  • https://nodered.org/docs/getting-started/windows