Windows系统下离线部署node-red
前言
因为项目中需要使用到node-red作为MQTT通讯的服务端,但是客户分配的服务器无法联网,导致无法安装node-red。本篇从离线部署的角度说明,如何在离线的环境下的服务器中部署node-red,并离线部署节点。
简单概括,即在联网的电脑中部署node.js和node-red,然后将联网服务器部署完成后的node-red和npm文件,迁移到无法联网的内网服务器。就可以在内网服务器中部署和使用node-red了
详细步骤如下:
1.联网电脑配置
从 Node.js 官方主页下载最新版本的Node.js。可以根据自己的需要选择自己需要的版本。
1.1安装Node.js
下载后,直接运行下载的 MSI 文件。一直点击“下一步”完成安装。
1.2安装Node-red
安装Node-red需要通过命令行安装。打开Powershell将 Node-RED 作为全局模块安装会将该命令添加node-red到您的系统路径中,所以需要通过Powershell进行安装。在命令提示符处执行以下命令(以下命令安装最新版本):
npm install -g --unsafe-perm node-red
注意:通过Powershell安装Node-red必须是在联网的环境下才能部署,否则没有网络时无法安装!!!
如果需要安装指定版本的node-red,那么安装时需要指定版本,以下命令指定安装3.0.0版本:
npm install -g --unsafe-perm node-red@3.0.0
输入命令后,等待安装完成即可:
1.3启动Node-red
因为通过Powershell安装后,会将Node-red自动添加到环境变量,所以可以直接通过命令行就可以启动node-red:
node-red
1.4安装Node-red节点
启动node-red后,如果需要创建节点,生成流程,或者需要额外安装节点。那么需要访问node-red的页面,配置节点流程。node-red通过浏览器访问,端口为1880:
访问地址 http://127.0.0.1:1880
可以根据自己的需要下载,安装新的节点,以便后续迁移到内网环境下。
2.内网服务器配置
内网服务同样需要安装node.js,然后将联网电脑中安装完成、已部署节点的node-red文件夹和npm文件夹复制迁移到内网服务器就可以在内网下愉快使用node-red了。
2.1安装Node.js
将Nodejs.msi安装包上传到内网服务器中,然后直接默认安装即可。步骤和之前一样。
2.2迁移.node-red文件夹
将本机(已部署号node的电脑)中C盘C:/用户/Administrator(自己的用户名)路径下的.node-red文件夹,直接复制到内网服务器的相同路径下。已有该文件则直接替换。
此时,可以把部署的节点全部迁移到内网服务器中。但是无法正常启动node-red,因此需要将npm复制到内网服务器,可以通过命令行控制node-red。
2.3迁移npm文件夹
将npm复制到内网服务器,可以通过命令行控制node-red,才能够正常启动node-red。
将外网服务器下C:/用户/Administrator(用户名)/AppData/Roaming的npm文件夹,复制到内网服务器的相同路径下,即可通过命令行启动node-red。
2.4内网服务器启动node-red测试
可以直接通过命令行启动node-red,然后通过浏览器访问node的页面。