Установка Node.js и n8n: Полное руководство
n8n — это мощный инструмент автоматизации рабочих процессов с открытым исходным кодом, который позволяет соединять различные приложения, API и сервисы без необходимости писать код. Поскольку n8n построен на платформе Node.js, первым и обязательным шагом является установка корректной версии Node.js и его менеджера пакетов npm. Данное руководство детально описывает процесс установки на различных операционных системах, настройку и первоначальный запуск n8n.
Установка Node.js
Node.js — это среда выполнения JavaScript, необходимая для работы n8n. Рекомендуется использовать версию LTS (Long Term Support), так как она обеспечивает стабильность и долгосрочную поддержку, что критически важно для производственных сред.
Проверка текущей установки
Перед началом установки проверьте, не установлены ли Node.js и npm уже в вашей системе. Откройте терминал (командную строку) и выполните команды:
node --versionnpm --version- Посетите официальный сайт Node.js.
- Скачайте установщик версии LTS (рекомендуется).
- Запустите скачанный файл (.msi) и следуйте инструкциям мастера установки. Рекомендуется оставить все настройки по умолчанию, включая опцию установки npm и добавление Node.js в переменную окружения PATH.
- После завершения установки откройте новое окно командной строки (CMD) или PowerShell и снова выполните команды
node --versionиnpm --versionдля подтверждения успешной установки. - Если Homebrew не установлен, установите его, выполнив в Терминале команду:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - Установите Node.js с помощью Homebrew:
brew install node - Проверьте установку:
node --version,npm --version. - Откройте терминал.
- Обновите индекс пакетов:
sudo apt update - Установите зависимости:
sudo apt install -y curl - Добавьте репозиторий NodeSource для нужной версии LTS (например, для версии 20.x):
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - - Установите Node.js и npm:
sudo apt install -y nodejs - Проверьте установку:
node --version,npm --version. - В терминале выполните команду:
npm install n8n -g - Флаг
-gуказывает на глобальную установку. Для этого действия в Linux/macOS могут потребоваться права суперпользователя (sudo). - После завершения установки проверьте её, выполнив:
n8n --version - В терминале выполните команду:
n8n start - По умолчанию n8n запустит веб-сервер и откроет интерфейс на
http://localhost:5678. - Откройте этот адрес в браузере. Вы увидите страницу приветствия, где можно создать первую учетную запись (для первого запуска) и начать создавать рабочие процессы.
- Убедитесь, что Docker установлен в вашей системе.
- Запустите контейнер n8n с помощью следующей команды:
docker run -it --rm
--name n8n
-p 5678:5678
-v ~/.n8n:/home/node/.n8n
n8nio/n8n - Эта команда создаст и запустит контейнер, пробросит порт 5678 на хост-машину и смонтирует том для сохранения данных (рабочих процессов, учетных данных) в директорию
~/.n8nна вашем компьютере. - После запуска откройте браузер по адресу
http://localhost:5678. - Использование PostgreSQL: Замените встроенную SQLite на PostgreSQL для повышения надежности и производительности. Настройте подключение через переменные окружения (DB_TYPE, DB_POSTGRESDB_HOST, DB_POSTGRESDB_USER, DB_POSTGRESDB_PASSWORD, DB_POSTGRESDB_DATABASE).
- Настройка обратного прокси (Nginx/Apache): Настройте веб-сервер как обратный прокси для n8n. Это позволит использовать HTTPS (SSL/TLS), собственный домен и балансировку нагрузки.
- Настройка аутентификации: Настройте встроенную аутентификацию n8n (N8N_USER_MANAGEMENT_JWT_SECRET) или используйте внешние провайдеры (OAuth2, LDAP).
- Настройка процессов (Processes): Определите, как n8n должен обрабатывать рабочие процессы. Ключевые переменные: EXECUTIONS_PROCESS (main, webhook), N8N_PROCESS_MAX_HEAP_SIZE (ограничение памяти).
- Регулярное резервное копирование: Регулярно создавайте резервные копии базы данных PostgreSQL и директории
.n8n, если в ней хранятся файлы. - Systemd (Linux): Создайте файл службы
/etc/systemd/system/n8n.serviceс описанием запуска командыn8n startили Docker-контейнера. - Docker Compose: Создайте
docker-compose.ymlфайл с описанием сервисов n8n и PostgreSQL, затем используйтеdocker-compose up -dи настройте автозапуск Docker Compose. - Всегда настраивайте
N8N_ENCRYPTION_KEYиN8N_USER_MANAGEMENT_JWT_SECRETна уникальные, сложные значения. - Развертывайте за обратным прокси (Nginx) с обязательным использованием HTTPS.
- Ограничьте доступ к порту n8n с помощью брандмауэра.
- Регулярно обновляйте n8n и его зависимости до последних стабильных версий.
- Используйте отдельную, защищенную базу данных (PostgreSQL) вместо SQLite для продакшена.
Если команды возвращают версии (например, v18.x.x или v20.x.x), Node.js уже установлен. Убедитесь, что версия соответствует требованиям n8n (актуальную информацию смотрите в официальной документации n8n). Если версия устарела или Node.js отсутствует, продолжите установку.
Установка на Windows
Самый простой способ — использовать официальный установщик с сайта nodejs.org.
Установка на macOS
Для macOS рекомендуется использовать менеджер пакетов Homebrew.
Установка на Linux (Ubuntu/Debian)
Для дистрибутивов на основе Debian можно использовать менеджер пакетов apt вместе с официальным репозиторием NodeSource.
Установка n8n
После успешной установки Node.js и npm вы можете установить n8n несколькими способами. Установка через npm является наиболее универсальной.
Установка n8n с помощью npm (глобальная установка)
Этот метод устанавливает n8n как глобальную команду в вашей системе, делая его доступным из любого места.
Запуск n8n в режиме разработки
Самый простой способ начать работу — запустить n8n в режиме разработки. Это подходит для первоначального тестирования и локальной работы.
Установка и запуск n8n с помощью Docker
Docker — это предпочтительный метод для развертывания n8n в производственной среде, так как он обеспечивает изоляцию, простоту обновления и консистентность на разных системах.
Базовая конфигурация n8n
n8n можно конфигурировать с помощью переменных окружения или файла конфигурации .n8n/config. Вот ключевые настройки:
| Переменная окружения | Описание | Пример значения |
|---|---|---|
| N8N_PROTOCOL | Протокол для веб-интерфейса. | http или https |
| N8N_HOST | Хост, на котором работает n8n. | localhost или 0.0.0.0 (для доступа извне) |
| N8N_PORT | Порт веб-интерфейса. | 5678 |
| N8N_ENCRYPTION_KEY | Ключ для шифрования учетных данных. Критически важно изменить для продакшена. | my-secret-key-123 |
| N8N_METRICS | Включение сбора метрик. | true |
| N8N_USER_MANAGEMENT_JWT_SECRET | Секрет для JWT при использовании встроенной аутентификации. | another-secret-key |
| DB_TYPE | Тип базы данных (по умолчанию SQLite). Для продакшена рекомендуется PostgreSQL. | postgresdb |
| DB_POSTGRESDB_HOST | Хост базы данных PostgreSQL. | localhost |
Пример запуска n8n с переменными окружения в Docker:
docker run -it --rm
--name n8n
-p 5678:5678
-v ~/.n8n:/home/node/.n8n
-e N8N_HOST=0.0.0.0
-e N8N_ENCRYPTION_KEY=your_super_secret_key
-e DB_TYPE=postgresdb
-e DB_POSTGRESDB_HOST=your_postgres_host
n8io/n8n
Развертывание в производственной среде
Для использования n8n в рабочих условиях необходимо выполнить несколько критически важных шагов:
Обновление n8n
Для обновления n8n, установленного через npm, выполните команду:
npm update n8n -g
Для обновления Docker-образа:
docker pull n8nio/n8n
docker stop n8n_container_name
docker rm n8n_container_name
Запустите новый контейнер с теми же параметрами тома и сети.
Перед обновлением в продакшене всегда делайте полную резервную копию базы данных и конфигурации.
Часто задаваемые вопросы (FAQ)
Как изменить порт, на котором запускается n8n?
Используйте переменную окружения N8N_PORT или флаг при запуске: n8n start --port=8080. В Docker пробросьте другой порт: -p 8080:5678.
Где хранятся мои рабочие процессы и учетные данные?
При установке через npm данные по умолчанию хранятся в директории ~/.n8n (домашняя директория пользователя). В Docker эта директория монтируется как том (-v ~/.n8n:/home/node/.n8n). При использовании PostgreSQL данные хранятся в таблицах БД.
Как сбросить пароль администратора?
Остановите n8n. Удалите файл ~/.n8n/config или конкретно секцию userManagement.users из него. После перезапуска n8n запросит создание новой учетной записи. Для продакшена на PostgreSQL потребуется выполнить SQL-запрос для обновления хэша пароля в таблице user.
Почему n8n не запускается, выдавая ошибку о порте?
Порт 5678 уже занят другим приложением. Используйте флаг --port или переменную N8N_PORT, чтобы указать свободный порт. В Linux/macOS проверьте занятость порта командой: lsof -i :5678.
Как организовать автоматический запуск n8n на сервере?
Используйте системные менеджеры служб:
Как повысить безопасность инстанса n8n?
Заключение
Установка n8n начинается с корректной установки Node.js версии LTS, что обеспечивает стабильную основу для работы платформы. Установка самого n8n может быть выполнена несколькими методами: глобально через npm для локального тестирования или с помощью Docker для изолированного и воспроизводимого развертывания. Для использования в производственной среде критически важно выполнить дополнительные шаги: настройку внешней базы данных PostgreSQL, конфигурацию обратного прокси с HTTPS, настройку аутентификации и механизмов резервного копирования. Следование этому подробному руководству позволит развернуть надежную и безопасную платформу автоматизации n8n, готовую к интеграции с сотнями различных сервисов и созданию сложных рабочих процессов.
Добавить комментарий