|
|
Строка 1: |
Строка 1: |
| | |
| <languages/><translate> | | <languages/><translate> |
| <!--T:19--> | | <!--T:19--> |
Строка 16: |
Строка 17: |
| <!--T:22--> | | <!--T:22--> |
| {{Wbincludes:Installing Software In Console}} | | {{Wbincludes:Installing Software In Console}} |
| | |
| | |
|
| |
|
| == Установка == <!--T:23--> | | == Установка == <!--T:23--> |
| Для установки Node-RED 2.2 на контроллер Wiren Board подключитесь к нему по [[SSH]] и введите в консоль несколько команд. | | Для установки Node-RED 2.2 на контроллер Wiren Board подключитесь к нему по [[SSH]] и введите в консоль несколько команд. |
|
| |
|
| <!--T:24-->
| | # Установите docker по [[docker | инструкции]]. |
| Установите необходимые компоненты: | | # Создайте каталог под служебные файлы: |
| <syntaxhighlight lang="bash">
| |
| apt update && apt install -y nodejs git make g++ gcc build-essential
| |
| </syntaxhighlight>
| |
| | |
| <!--T:25-->
| |
| Запустите установку Node-RED:
| |
| * Для релизов на Debian Linux Stretch (wb-2207):
| |
| *:<syntaxhighlight lang="bash">
| |
| npm install -g --unsafe-perm node-red@2.2
| |
| </syntaxhighlight>
| |
| * Для релизов на Debian Linux Bullseye:
| |
| *:<syntaxhighlight lang="bash">
| |
| npm install -g --unsafe-perm node-red
| |
| </syntaxhighlight>
| |
| | |
| Узнать релиз можно командой <code>wb-release</code>. [[Wiren_Board_Firmware_Update#Кратко_о_релизах | Подробнее о релизах]].
| |
| | |
| <!--T:26-->
| |
| Если потребуется обновить версию Node-RED, выполните команду установки ещё раз.
| |
| | |
| | |
| После установки можно удалить неиспользуемые пакеты, нужные только для установки (это сэкономит 145мб места):
| |
| <syntaxhighlight lang="bash">
| |
| apt remove binutils-common libbinutils binutils-arm-linux-gnueabihf binutils libisl23 libmpfr6 cpp-10 libasan6 gcc-10 libdpkg-perl dpkg-dev build-essential dirmngr gnupg-l10n pinentry-curses fakeroot gnupg-utils gpg gpgconf gpgsm libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libassuan0 libcc1-0 libctf-nobfd0 libfakeroot libfile-fcntllock-perl libgomp1 libksba8 libnpth0 libubsan1
| |
| </syntaxhighlight>
| |
| | |
| == Создание сервиса == <!--T:27-->
| |
| | |
| <!--T:28-->
| |
| Для автозапуска Node-RED необходимо настроить сервис. Для этого в папке <code>/etc/systemd/system/</code> создайте файл <code>nodered.service</code>:
| |
| | |
| <!--T:29-->
| |
| <syntaxhighlight lang="bash">
| |
| nano /etc/systemd/system/nodered.service
| |
| </syntaxhighlight>
| |
| | |
| <!--T:30-->
| |
| Затем вставьте в этот файл строки:
| |
| <pre>
| |
| [Unit]
| |
| Description=Node-RED graphical event wiring tool
| |
| Wants=network.target
| |
| | |
| <!--T:31-->
| |
| [Service]
| |
| Type=simple
| |
| User=root
| |
| Group=root
| |
| WorkingDirectory=/home
| |
| | |
| <!--T:32-->
| |
| Nice=5
| |
| Environment="NODE_OPTIONS=--max_old_space_size=256"
| |
| ExecStart=/usr/bin/env node-red $NODE_OPTIONS $NODE_RED_OPTIONS
| |
| KillSignal=SIGINT
| |
| Restart=on-failure
| |
| SyslogIdentifier=Node-RED
| |
| | |
| <!--T:33-->
| |
| [Install]
| |
| WantedBy=multi-user.target
| |
| </pre>
| |
| | |
| <!--T:34-->
| |
| Сохраните изменения и закройте файл. Теперь включите сервис и запустите его командой:
| |
| | |
| <!--T:35-->
| |
| <syntaxhighlight lang="bash">
| |
| systemctl enable nodered && systemctl start nodered
| |
| </syntaxhighlight>
| |
| | |
| <!--T:36-->
| |
| Проверьте статус сервиса командой, в выводе должна быть строчка <code>Active: active (running)</code>:
| |
| <syntaxhighlight lang="console">
| |
| # systemctl status nodered
| |
| ● nodered.service - Node-RED graphical event wiring tool
| |
| Loaded: loaded (/etc/systemd/system/nodered.service; enabled; vendor preset: enabled)
| |
| Active: active (running) since Fri 2021-12-03 06:32:25 UTC; 24s ago
| |
| Main PID: 2757 (node)
| |
| CGroup: /system.slice/nodered.service
| |
| └─2757 node /usr/bin/node-red --max_old_space_size=256
| |
| | |
| <!--T:37-->
| |
| Dec 03 06:32:25 wirenboard-AWQBNTYP systemd[1]: Started Node-RED graphical event wiring tool.
| |
| Dec 03 06:32:36 wirenboard-AWQBNTYP Node-RED[2757]: 3 Dec 06:32:36 - [info]
| |
| Dec 03 06:32:36 wirenboard-AWQBNTYP Node-RED[2757]: Welcome to Node-RED
| |
| Dec 03 06:32:36 wirenboard-AWQBNTYP Node-RED[2757]: ===================
| |
| Dec 03 06:32:36 wirenboard-AWQBNTYP Node-RED[2757]: 3 Dec 06:32:36 - [info] Node-RED version: v2.1.4
| |
| Dec 03 06:32:36 wirenboard-AWQBNTYP Node-RED[2757]: 3 Dec 06:32:36 - [info] Node.js version: v12.19.0
| |
| Dec 03 06:32:36 wirenboard-AWQBNTYP Node-RED[2757]: 3 Dec 06:32:36 - [info] Linux 5.10.35-wb6 arm LE
| |
| Dec 03 06:32:41 wirenboard-AWQBNTYP Node-RED[2757]: 3 Dec 06:32:41 - [info] Loading palette nodes
| |
| </syntaxhighlight>
| |
| | |
| == Удаление == <!--T:38-->
| |
| Если вам больше не нужен Node-RED, то его можно удалить:
| |
| # Остановите, отключите и удалите сервис: | |
| #:<syntaxhighlight lang="bash"> | | #:<syntaxhighlight lang="bash"> |
| systemctl stop nodered && systemctl disable nodered && rm /etc/systemd/system/nodered.service
| | mkdir /mnt/data/root/nodered |
| | chown -R 1000:1000 /mnt/data/root/nodered |
| | chmod -R 777 /mnt/data/root/nodered |
| </syntaxhighlight> | | </syntaxhighlight> |
| # Удалите сам Node-RED: | | # Запустите образ nodered — docker автоматически загрузит его из интернет и запустит: |
| #:<syntaxhighlight lang="bash"> | | #:<syntaxhighlight lang="bash"> |
| npm -g remove node-red && npm -g remove node-red-admin && rm -R ~/.node-red
| | docker run -d --name nodered --privileged --restart=unless-stopped -e TZ=Europe/Moscow -v /mnt/data/root/nodered:/data -e NODE_OPTIONS="--max_old_space_size=256" --network=host nodered/node-red |
| </syntaxhighlight> | | </syntaxhighlight> |
|
| |
|
| <!--T:39-->
| | После установки и запуска, откройте браузер и введите [[How_to_find_IP_address | адрес своего контроллера]] в сети и порт 1880. Например: http://192.168.42.1:1880 Консоль можно закрыть. |
| Node.js, тоже можно удалить, но убедитесь, что у вас не установлены другие програмы, которые его используют, например, zigbee2mqtt. Чтобы удалить node.js, выполните команду:
| |
| :<syntaxhighlight lang="bash">
| |
| apt remove nodejs
| |
| </syntaxhighlight>
| |
|
| |
|
| ==Веб-интерфейс Node-RED== <!--T:40--> | | ==Веб-интерфейс Node-RED== <!--T:40--> |