Установка Node-RED чаще всего упирается в одну и ту же ошибку: команда npm install -g node-red завершается с ошибкой доступа или не находит Node.js, потому что среда выполнения JavaScript не была установлена заранее. Node-RED — это не самостоятельная программа, а пакет для Node.js, поэтому порядок действий строго последовательный: сначала ставится среда, потом сама платформа визуального программирования.
Ниже разберём установку на Windows, Linux (включая Raspberry Pi) и через Docker, проверим работоспособность редактора в браузере и разберём типовые сбои. Инструкция подходит как для домашней автоматизации, так и для прототипирования IoT-проектов.
Что такое Node-RED и что нужно перед установкой
Node-RED — среда визуального программирования на основе потоков (flows), где логика собирается из узлов: MQTT-брокеры, HTTP-запросы, таймеры, обработка данных. Платформа работает поверх Node.js и управляется через браузер по адресу http://localhost:1880 — это порт по умолчанию.
Перед установкой проверьте три вещи:
- 🔧 Установлен ли Node.js — выполните
node -vв терминале; если команда не найдена, среду нужно поставить первой - 📦 Работает ли пакетный менеджер npm — проверка командой
npm -v - 🌐 Свободен ли порт
1880— если его занимает другой сервис, Node-RED не стартует - 💾 Есть ли доступ в интернет — пакеты загружаются из репозитория npm
Рекомендуется использовать актуальную LTS-версию Node.js с официального сайта проекта — с ней совместимость модулей обычно выше, чем с устаревшими сборками из сторонних источников.
Установка Node.js — обязательный первый шаг
На Windows скачайте установщик LTS-версии с официального сайта nodejs.org и запустите его. В мастере установки оставьте отмеченной опцию добавления в PATH — без неё команды node и npm не будут распознаваться в командной строке.
На Linux-дистрибутивах с пакетным менеджером установка выполняется через терминал. Для Debian и Ubuntu типовая команда выглядит так:
sudo apt update
sudo apt install nodejs npm
После установки обязательно перезапустите терминал и проверьте версии командами node -v и npm -v. Если вместо версии появляется «команда не найдена» — проблема в переменных окружения, и дальнейшая установка Node-RED бессмысленна до её решения.
Установка Node-RED через npm
Когда среда готова, сама платформа ставится одной командой:
npm install -g --unsafe-perm node-red
Флаг -g означает глобальную установку — команда node-red станет доступна из любой папки. Параметр --unsafe-perm нужен на Linux при установке от root, чтобы скрипты пакета выполнялись корректно; на Windows его можно опустить.
☑️ Проверка перед запуском Node-RED
Запуск выполняется командой node-red. В консоли появится лог загрузки, а строка вида Server now running at http://127.0.0.1:1880/ подтвердит, что редактор доступен. Откройте этот адрес в браузере — вы увидите рабочую область с палитрой узлов слева.
⚠️ Внимание: по умолчанию редактор Node-RED открыт без пароля. Если порт 1880 доступен из локальной сети или интернета, любой сможет менять ваши потоки. Настройте авторизацию в файле settings.js до того, как открывать доступ извне.
Установка на Raspberry Pi и через Docker
Для Raspberry Pi OS существует официальный скрипт, который ставит Node.js, Node-RED и настраивает автозапуск одной командой:
bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
После выполнения скрипта включите службу командой sudo systemctl enable nodered.service — платформа будет стартовать вместе с системой.
Альтернатива — Docker, если не хотите затрагивать основную систему. Контейнер запускается одной строкой:
docker run -it -p 1880:1880 --name mynodered nodered/node-red
Файл настроек и потоки при таком способе живут внутри контейнера; для их сохранения при пересоздании подключите том -v node_red_data:/data.
Первый запуск и базовая настройка
После старта проверьте, что редактор открывается и потоки разворачиваются кнопкой Deploy. Простейший тест — перетащить узлы inject и debug, соединить их и нажать Deploy: сообщение должно появиться в панели отладки справа.
Основные настройки хранятся в файле settings.js, который находится в папке ~/.node-red (на Windows — в профиле пользователя). Там задаются порт, авторизация, путь к проектам и шифрование учётных данных потоков.
adminAuth в settings.js: без него интерфейс остаётся публичным.
Сравнение способов установки
| Способ | Сложность | Автозапуск | Для кого |
|---|---|---|---|
| npm на Windows | Низкая | Вручную или через планировщик | Локальные эксперименты |
| npm на Linux | Низкая | Через systemd | Серверы и VPS |
| Скрипт для Raspberry Pi | Минимальная | Настраивается автоматически | Домашняя автоматизация |
| Docker | Средняя | Через политику restart | Изолированное окружение |
Для постоянно работающего умного дома удобнее вариант со службой systemd или Docker — переживает перезагрузку без ручного вмешательства. Для разовых тестов достаточно обычного запуска из терминала.
Типовые ошибки и их решение
Если npm install выдаёт ошибки EACCES на Linux, не спешите запускать всё через sudo — корректнее настроить права на глобальную папку npm по официальной документации Node.js. Постоянная установка пакетов от root создаёт проблемы с правами в дальнейшем.
Ошибка EADDRINUSE при запуске означает, что порт 1880 уже занят — либо второй копией Node-RED, либо другим сервисом. Найдите процесс командой sudo lsof -i :1880 или смените порт в settings.js.
⚠️ Внимание: обновление Node.js поверх старой версии иногда ломает скомпилированные модули Node-RED. Если после апгрейда появляются ошибки при старте, переустановите пакет: npm uninstall -g node-red, затем установите заново.
Где Node-RED хранит свои файлы
Все потоки, настройки и установленные узлы лежат в папке ~/.node-red (на Windows — C:\Users\Имя\.node-red). Файл flows.json содержит ваши потоки, settings.js — конфигурацию, а подпапка node_modules — дополнительные узлы из палитры. Для резервной копии достаточно скопировать эту папку.
Часто задаваемые вопросы
Можно ли установить Node-RED без Node.js?
Нет, вне Docker-контейнера Node.js обязателен — Node-RED написан на JavaScript и выполняется в этой среде. Альтернатива ручной установке среды — Docker-образ, где Node.js уже включён внутрь контейнера.
Как сделать автозапуск Node-RED на Windows?
Штатной службы установщик не создаёт. Используйте планировщик заданий Windows с запуском команды node-red при входе в систему либо сторонние утилиты для регистрации произвольных программ как служб.
Как обновить Node-RED до новой версии?
Повторите команду установки: npm install -g --unsafe-perm node-red — npm заменит пакет на актуальную версию. Потоки и настройки в папке .node-red при этом сохраняются.
Почему редактор не открывается в браузере?
Проверьте, что процесс запущен и в консоли нет ошибок, что используется правильный порт и что брандмауэр не блокирует соединение. При доступе с другого устройства указывайте IP сервера вместо localhost.
Безопасно ли выставлять Node-RED в интернет?
Без настройки авторизации — нет. Минимум: включите adminAuth в settings.js, желательно добавить HTTPS через обратный прокси. Открытый редактор позволяет выполнять произвольные команды на сервере через узлы exec.