Margrop
Articles158
Tags353
Categories21
1password AC AP API AppDaemon Aqara Cron Date Diagrams.net HA HADashboard HomeAssistant IP IPv4 Java LVM‑Thin Linux MacOS MySQL NAS PPPoE PostgreSQL ProcessOn Proxmox VE SSL Shell TTS TimeMachine UML Uptime Kuma Web Windows activate ad adb adblock agent aligenie aliyun alpine annotation aop authy autofs backup baidupan bash bitwarden boot brew browser caddy2 cdn centos cert certbot charles chat chrome classloader client clone closures cloudflare cmd command commit container crontab ctyun ddsm demo dependency deploy developer devtools dll dns docker domain download draw drawio dsm dump dylib edge exception export fail2ban feign firewall-cmd flow frp frpc frps fuckgfw function gcc gfw git github golang gperftools gridea grub gvt-g hacs havcs heap hello hexo hibernate hidpi hoisting homeassistant hosts html htmlparser https idea image img img2kvm import index install intel io ios ip iptables iptv ipv6 iso java javascript jetbrains jni jnilib jpa js json jsonb jupter jupyterlab jvm k8s kernel key kid kms kodi koolproxy koolproxyr kvm lan lastpass launchctl learning lede letsencrypt linux live low-code lvm lxc m3u8 mac macos mariadb markdown maven md5 microcode mirror modem modules monitor mount mstsc mysql n2n n5105 nas network nfs node node-red nodejs nohup notepad++ npm nssm ntp oop openfeign openssl os otp ovz packet capture pat pdf pem perf ping pip plugin png powerbutton print pro proxy pve pvekclean python qcow2 qemu qemu-guest-agent rar reboot reflog remote remote desktop renew repo resize retina root route router rule rules runtime safari sata scipy-notebook scoping scp server slmgr so socks source spk spring springboot springfox ssh ssl stash string supernode svg svn swagger sync synology systemctl tap tap-windows tapwindows telecom template terminal tls token totp tvbox txt ubuntu udisk ui undertow uninstall unlocker upgrade url v2ray vhd vim vlmcsd vm vmdk web websocket wechat windows with worker wow xiaoya xml yum zip 中国电信 云电脑 交换机 光猫 公网IP 内存 内网IP 升级 启动 夏令时 天猫精灵 天翼云 安装 容器 导入 小米 常用软件 广告屏蔽 序列号 应用市场 异常 抓包 描述文件 时区 显卡虚拟化 智能家居 智能音箱 梯子 模块 流程 流程图 浏览器 漫游 激活 火绒 电信 画图 直播源 续期 网关 网络风暴 群晖 腾讯 虚拟机 证书 路由 路由器 软件管家 软路由 运维监控 镜像 镜像源 门窗传感器 防火墙 阿里云 阿里源 集客

Hitokoto

Archive

如何通过 NPM 安装 Node-RED

如何通过 NPM 安装 Node-RED

Node-RED是什么

Node-RED是一种低代码/无代码编程工具,用于以新颖有趣的方式将硬件设备API在线服务连接在一起。特别适用于智能家居

Node-RED提供了一个基于浏览器的流编辑器,可轻松使用面板中的各种节点将流连接在一起。然后,单击即可将流部署到运行时。

可以使用富文本编辑器在编辑器中创建JavaScript函数。
内置库允许您保存有用的功能,模板或流程以供重复使用。

建立在Node.js之上

基于Node.js构建,轻量级的运行环境,充分利用了事件驱动的非阻塞模型。这使得它非常适合在低成本的硬件(如Raspberry Pi)上的网络边缘以及云服务器运行。

Node的软件包存储库中有超过225,000个模块,可以轻松扩展面板节点的范围以添加新功能。

社交共享

Node-RED中创建的流使用JSON存储,可以轻松导入和导出以与他人共享。

在线流程库使您可以与世界分享最佳流程。

安装Node和NPM环境

使用NPM安装

要安装Node-RED,您可以使用node.js附带的npm命令:

1
sudo npm install -g --unsafe-perm node-red

该命令会将Node-RED及其依赖项安装为全局模块。
如果命令输出的结尾类似于以下内容,则可以确认它已成功:

1
2
3
+ [email protected]
added 332 packages from 341 contributors in 18.494s
found 0 vulnerabilities

运行Node-Red

安装为全局模块后,您可以使用node-red命令在终端中启动Node-RED。您可以使用Ctrl-C或关闭终端窗口来停止Node-RED。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$ node-red

Welcome to Node-RED
===================

30 Jun 23:43:39 - [info] Node-RED version: v1.1.0
30 Jun 23:43:39 - [info] Node.js version: v10.21.0
30 Jun 23:43:39 - [info] Darwin 18.7.0 x64 LE
30 Jun 23:43:39 - [info] Loading palette nodes
30 Jun 23:43:44 - [warn] rpi-gpio : Raspberry Pi specific node set inactive
30 Jun 23:43:44 - [info] Settings file : /Users/nol/.node-red/settings.js
30 Jun 23:43:44 - [info] HTTP Static : /Users/nol/node-red/web
30 Jun 23:43:44 - [info] Context store : 'default' [module=localfilesystem]
30 Jun 23:43:44 - [info] User directory : /Users/nol/.node-red
30 Jun 23:43:44 - [warn] Projects disabled : set editorTheme.projects.enabled=true to enable
30 Jun 23:43:44 - [info] Creating new flows file : flows_noltop.json
30 Jun 23:43:44 - [info] Starting flows
30 Jun 23:43:44 - [info] Started flows
30 Jun 23:43:44 - [info] Server now running at http://127.0.0.1:1880/red/

然后,您可以通过将浏览器指向http://localhost:1880来访问Node-RED编辑器。

日志输出为您提供各种信息:

  • Node-REDNode.js的版本
  • 尝试加载调色板节点时遇到任何错误
  • 设置文件和用户目录的位置
  • 它正在使用的流文件的名称。
    Node-RED使用flows_<hostname>.json作为默认流文件。您可以通过提供流文件名作为node-red命令的参数来更改此设置。

使用命令行

可以使用命令启动Node-RED node-red。该命令可以使用各种参数:

1
2
3
4

node-red [-v] [-?] [--settings settings.js] [--userDir DIR]
[--port PORT] [--title TITLE] [--safe] [flows.json|projectName]
[-D X=Y|@file]
Option Description
-p, –port 设置运行时侦听的TCP端口。默认:1880
–safe 在不启动流程的情况下启动Node-RED。
这使您可以在编辑器中打开流并进行更改,而无需运行流。
当您部署更改时,流程就开始了。
-s, –settings FILE 设置要使用的设置文件。默认值:<userDir>/settings.js
–title TITLE 设置进程窗口标题
-u, –userDir DIR 设置要使用的用户目录。默认:~/.node-red
-v 启用详细输出
-?, –help 显示命令行用法帮助并退出
flows.json projectName

Node-RED使用flows_<hostname>.json作为默认流文件。如果运行的计算机可能会更改其主机名,则应确保提供一个静态文件名;作为命令行参数或使用设置文件中的flowsFile选项。

如何升级Node-RED

如果已将Node-RED作为全局npm软件包安装,则可以使用以下命令升级到最新版本:

1
sudo npm install -g --unsafe-perm node-red

参考文章

Node-Red
Node-JS
Running Node-RED locally

Author:Margrop
Link:http://blog.margrop.com/post/how-to-install-nodered-with-npm/
版权声明:本文采用 CC BY-NC-SA 3.0 CN 协议进行许可