ubuntu安装node-red

news/2024/10/2 12:05:11

ubuntu安装node-red

安装nvm

在 Ubuntu 系统上,可以通过以下几种方法来安装 nvm(Node Version Manager):

方法 1: 使用官方脚本安装

这是最常见和推荐的方法。使用 curlwget 来下载并运行安装脚本。

使用 curl 安装

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

使用 wget 安装

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

方法 2: 手动安装

手动下载、解压并配置 nvm

1. 克隆 nvm 仓库:

git clone https://github.com/nvm-sh/nvm.git ~/.nvm

2. 加载 nvm:

检查和配置 .bashrc 文件
  1. 打开 .bashrc 文件:
    使用nano或者别的文本编辑其打开 ~/.bashrc 文件。这里使用 nano 作为示例:

    nano ~/.bashrc
    
  2. 添加 nvm 加载代码:
    在文件末尾添加以下内容:

    export NVM_DIR="$HOME/.nvm"
    [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
    
  3. 保存并退出:

    • nano 中,按 Ctrl+X
    • 然后按 Y 确认保存。
    • 最后按 Enter 退出。
  4. 重新加载 .bashrc 文件:
    运行以下命令以应用更改:

    source ~/.bashrc
    

3.验证安装

安装完成后,通过以下命令验证 nvm 是否已正确安装:

$ nvm --version
0.40.1

安装 Node.js

nvm 安装成功后,可以使用它来安装特定版本的 Node.js。例如,安装最新的 LTS 版本:

$ nvm install --lts
Installing latest LTS version.
Downloading and installing node v20.17.0...
Downloading https://nodejs.org/dist/v20.17.0/node-v20.17.0-linux-x64.tar.xz...
######################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v20.17.0 (npm v10.8.2)
Creating default alias: default -> lts/* (-> v20.17.0)

设置默认的 Node.js 版本:

$ nvm use --lts
Now using node v20.17.0 (npm v10.8.2)
$ nvm alias default 20.17.0
default -> 20.17.0 (-> v20.17.0)

安装 Node-RED

最后,全局安装 Node-RED:

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

安装完成,启动node-red

$ node-red
2 Oct 11:29:41 - [info] Welcome to Node-RED
===================2 Oct 11:29:41 - [info] Node-RED version: v4.0.3
2 Oct 11:29:41 - [info] Node.js  version: v20.17.0
2 Oct 11:29:41 - [info] Linux 5.15.0-117-generic x64 LE
2 Oct 11:29:41 - [info] Loading palette nodes
...

设置成自启动

几种常见的方法:

方法 1: 使用 Systemd 服务(推荐)

Systemd 是大多数现代 Linux 发行版的初始化系统和服务管理器。通过创建一个 Systemd 服务,你可以确保 Node-RED 在系统启动时自动运行。

  1. 创建 Systemd 服务文件:
    创建一个新的 Systemd 服务文件。假设你的用户是 your-username,Node-RED 安装在全局目录中。

    sudo nano /etc/systemd/system/nodered.service
    
  2. 编辑服务文件:
    将以下内容粘贴到文件中,并根据需要进行修改:
    注意:Environment栏配置nvm环境变量。

    [Unit]
    Description=Node-RED Server
    After=network.target[Service]
    User=your-username
    WorkingDirectory=/home/your-username
    Environment="PATH=/usr/local/bin:/home/your-username/.nvm/versions/node/v20.17.0/bin:$PATH"
    ExecStart=/usr/local/bin/node-red
    Restart=on-failure
    Environment=NODE_OPTIONS=--max-old-space-size=512[Install]
    WantedBy=multi-user.target
    
    • User=your-username:将 your-username 替换为你的用户名。
    • WorkingDirectory=/home/your-username:设置工作目录为你用户的主目录。
    • ExecStart=/usr/local/bin/node-red:确保路径正确指向你安装的 Node-RED 可执行文件。
  3. 重新加载 Systemd 配置:
    保存并关闭文件后,重新加载 Systemd 配置以应用更改:

    sudo systemctl daemon-reload
    
  4. 启用并启动服务:
    启用服务以便在系统启动时自动运行,并立即启动它:

    sudo systemctl enable nodered.service
    sudo systemctl start nodered.service
    
  5. 检查服务状态:
    检查服务是否正在运行:

$ sudo systemctl status nodered.service
● nodered.service - Node-RED Server
Loaded: loaded (/etc/systemd/system/nodered.service; enabled; vendor prese>
Active: active (running) since Wed 2024-10-02 11:53:59 CST; 9s ago
Main PID: 2810 (node-red)
Tasks: 11 (limit: 1917)
Memory: 47.1M
CPU: 1.134s
CGroup: /system.slice/nodered.service
└─2810 node-red


### 方法 2: 使用 Cron 的 @reboot如果你不想使用 Systemd,可以使用 Cron 的 `@reboot` 来实现类似的功能。1. **编辑 Cron 表**:
打开当前用户的 Cron 表:```bash
crontab -e
  1. 添加 @reboot 条目:
    添加以下行以在系统启动时运行 Node-RED:

    @reboot /usr/local/bin/node-red >> /home/your-username/node-red.log 2>&1
    
    • /usr/local/bin/node-red:确保路径正确指向你安装的 Node-RED 可执行文件。
    • /home/your-username/node-red.log:指定日志文件路径。
  2. 保存并退出:
    保存并退出编辑器(在 nano 中按 Ctrl+X,然后按 Y 确认保存)。

方法 3: 使用 PM2 进程管理器

PM2 是一个流行的 Node.js 进程管理器,可以帮助你轻松地管理和保持 Node-RED 服务的运行。

  1. 安装 PM2:
    全局安装 PM2:

    npm install -g pm2
    
  2. 启动 Node-RED 并使用 PM2 管理:
    使用 PM2 启动 Node-RED:

    pm2 start /usr/local/bin/node-red --name node-red
    
  3. 设置开机自启:
    使用 PM2 设置 Node-RED 开机自启:

    pm2 startup
    pm2 save
    

    pm2 startup 会生成一个命令,你需要复制并运行该命令以设置 PM2 开机自启。例如:

    sudo env PATH=$PATH:/usr/local/bin /usr/local/lib/node_modules/pm2/bin/pm2 startup systemd -u your-username --hp /home/your-username
    
  4. 检查 PM2 状态:
    检查 PM2 管理的服务状态:

    pm2 list
    
方法1测试成功,2.3没测试。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/67060.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

【训练记录】2024年莆田市高中信息学奥赛国庆集训CSP-S提高组(第二天场外)

训练情况 rk#4 \(100 + 100 + 100 + 70 = 370\) 赛后反思 没什么很严重的失误,只是国庆早八起不来,打到后面时间不够做第四题了QAQ,下次一定早起TAT A题开场怎么是CF Div4 原题,显然因为 \(a,b,c,d\) 互不相同,最后切出来的结果只有三块或四块,三块的情况是两线没有交叉,…

抽烟行为识别预警系统

抽烟行为识别预警系统基于AI视觉智能分析技术,抽烟行为识别预警系统通过监测现场人员抽烟行为自动存档进行报警提示同步回传后台提醒值班人员及时处理。抽烟行为识别预警系统对现场人员吸烟行为进行7*24小时不间断识别监测,当发现有人抽烟时主动抓拍存档并同步触发报警。抽烟…

明厨亮灶AI智能分析盒

明厨亮灶AI智能分析盒通过AI视频分析技术,明厨亮灶AI智能分析盒赋能现场普通监控具备了AI智能检测的功能,能够迅速高效的识别厨房内的工作人员的着装状况:口罩穿戴识别、厨师服穿戴识别、吸烟识别、厨师帽穿戴识别、后厨鼠害识别、玩手机识别等。明厨亮灶AI智能分析盒对餐厅…

安全生产劳保穿戴监测系统

安全生产劳保穿戴监测系统通过计算机智能视频分析技术,安全生产劳保穿戴监测系统对现场区域施工作业人员防护用品穿戴是否合规进行自动监测,当安全生产劳保穿戴监测系统监测到现场施工人员没有按施工要求穿戴防护用品时,不需人为干预系统立即自动触发告警并抓拍存档同步提醒…

c++ vector容器、字符串

c++ vector容器 字符串:

记一次内存告警

刚好国庆最后一天上班,遇到一个实例内存使用率100%的告警。 分析JVM内存常用的命令得总结一下:

Leetcode 275. H 指数 II

1.题目基本信息 1.1.题目描述 给你一个整数数组 citations ,其中 citations[i] 表示研究者的第 i 篇论文被引用的次数,citations 已经按照 升序排列 。计算并返回该研究者的 h 指数。 h 指数的定义:h 代表“高引用次数”(high citations),一名科研人员的 h 指数是指他(她…

7、卷积神经网络基础

1、边缘检测示例(Edge Detection Example)卷积运算(convolutional operation)是卷积神经网络最基本的组成部分,使用边缘检测(edge detection)作为入门样例。接下来,你会看到卷积是如何进行运算的。在之前的人脸例子中,我们知道神经网络的前几层是如何检测边缘的,然后…