LogoControl. Логика Цифры.

Документация. Описание. Примеры. Заметки.

Node. Node-Red. Установка. Armbian.

2023-08-23 Node-Red YuriGuri

Удобный способ установки Node.js, это использование nvm, менеджера версий узлов. Эта часть программного обеспечения позволяет вам устанавливать и поддерживать множество различных независимых версий Node.js , и связанные с ними пакеты узлов одновременно.

Чтобы установить nvm на свой компьютер, посетите страницу проекта на GitHub . Скопируйте команду curl из файла README, который отображается на главной странице. Это позволит вам получить самую последнюю версию установочного скрипта.

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh

Просмотрите сценарий и убедитесь, что вас все устраивает. Запустите команду еще раз с добавлением | bash в конце. Используемый вами URL-адрес будет меняться в зависимости от последней версии nvm, на данный момент скрипт можно загрузить и выполнить следующим образом:

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

Это установит скрипт nvm в вашу учетную запись пользователя. Чтобы использовать его, вы должны сначала создать код вашего файла .bashrc:

source ~/.bashrc

Теперь вы можете спросить NVM, какие версии Node доступны:

nvm list-remote

Вы можете установить версию Node, указав любую из перечисленных версий.

nvm install v18.17.0

Вы можете просмотреть различные установленные вами версии, просмотрев их:

nvm list

В первой строке отображается текущая активная версия (-> v14.10.0), за которой следуют некоторые именованные псевдонимы и версии, на которые указывают эти псевдонимы.

Примечание: если у вас также есть версия Node.js установленная через apt, вы можете увидеть используемую системой текущую версию. Вы всегда можете ее изменить, текущую, используемую в системе, версию Node с помощью nvm use system.

Вы можете установить версию, основанную на псевдонимах. Например, чтобы установить последнюю версию LTS с долгосрочной поддержкой, hydrogen, выполните следующие действия:

nvm install lts/hydrogen

Вы можете переключаться между установленными версиями с помощью nvm:

nvm use v14.10.0

Посмотреть текущщую установленную версию :

node -v

Как удалить Node.js

Вы можете удалить Node.js используя apt или nvm, в зависимости от того, как он был установлен. Чтобы удалить версию из системы, используйте apt remove:

sudo apt remove nodejs

По умолчанию apt remove сохраняет все локальные файлы конфигурации, которые были созданы с момента установки. Если вы не хотите сохранять файлы конфигурации для последующего использования, используйте apt purge:

sudo apt purge nodejs

Чтобы удалить версию Node.js который вы установили с помощью nvm, сначала определите, является ли это текущей активной версией:

nvm current

Если версия, на которую вы ориентируетесь, не является текущей активной версией, вы можете запустить:

nvm uninstall node_version

Эта команда удалит выбранную версию Node.js .

Если версия, которую вы хотели бы удалить, является текущей активной версией, вам сначала нужно деактивировать nvm, чтобы разрешить внести изменения:

nvm deactivate

Теперь вы можете удалить текущую версию с помощью предвдкщей команды uninstall, описанной ранее. При этом будут удалены все файлы, связанные с текущей версией Node.js .`

Использование nvm обеспечивает дополнительную гибкость при работе с различными версиями Node.js.

Установка Node-Red.

Для установки выполните команду:

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

Для запуска запустите команду: node-red

Как автоматически запустить Node-red при загрузке с помощью init.d

Эта процедура описывает, как автоматически запустить Node-red. Это альтернатива pm2.

  1. Войдите в учетную запись от имени root:
  2. Перейдите в папку init.d и создайте новый файл с именем “start_nodered”:
cd /etc/init.d
sudo nano start_nodered
  1. Скопируйте приведенный ниже скрипт в этот файл. Этот скрипт можно найти по следующей ссылке start_nodered script
#! /bin/sh
### BEGIN INIT INFO
# Provides:          node-red
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 6
# Short-Description: Start or stop the node-red server
### END INIT INFO

# Script to start node-red with PLCnext from Phoenix Contact using init.d 
# Execute these commands:
# sudo chmod 755 start_nodered
# sudo update-rc.d start_nodered defaults 99

USER=root

USER_DIR='/opt/plcnext/.node-red'

PATH=/usr/bin:/usr/sbin:/opt/plcnext/apps/60002172000051/opt/node-v10.15.3-linux-armv7l/bin 

NAME=node-red
DAEMON=/opt/plcnext/appshome/data/60002172000051/bin/node-red
OPTIONS="--max-old-space-size=128"

if [ -n "$USER_DIR" ];  then
    OPTIONS="$OPTIONS --userDir=$USER_DIR"
fi

LOG='/var/log/node-red.log'

PIDFILE=/var/run/node-red.pid

. /etc/init.d/functions

start_daemon () {
        start-stop-daemon --start --background 
        --chuid $USER --name $NAME 
                $START_STOP_OPTIONS --make-pidfile --pidfile $PIDFILE 
        --startas /bin/sh -- -c "$DAEMON $OPTIONS >> $LOG 2>&1"
    echo "Logging to "$LOG
}

case "$1" in
        start)
             echo "Starting daemon" "$NAME"
             start_daemon
        ;;
        stop)
             echo "Stopping daemon" "$NAME"
             start-stop-daemon --stop 
             --user $USER 
             --name $NAME --pidfile $PIDFILE --retry 30 
             --oknodo
        ;;
        restart)
         $0 stop
         sleep 5
         $0 start
    ;;

    status)
             status "$DAEMON" "$NAME"
             exit $?
        ;;

        *)
             echo "Usage: $0 {start|stop|restart}"
             exit 1
esac
exit 0
  1. Выполните две команды, приведенные ниже:
sudo chmod 755 start_nodered
sudo update-rc.d start_nodered defaults 99
  1. Сделайте reboot и проверьте, запустился ли Node-RED.
sudo systemctl status nodered
  • Важно, чтобы имя файла начиналось с “start” или любого другого слова, начинающегося с буквы “s”, чтобы гарантировать, что Node-Red запустится после всех остальных процессов.

Источник: PLCnext Technology