Краткий ответ: Для серверов устанавливайте текущий LTS-релиз Node.js — либо из репозитория NodeSource (системно, хорошо для продакшена), либо через nvm (для пользователя, удобное переключение версий). Избегайте пакета дистрибутива по умолчанию — он часто устаревший.
Обзор
Node.js выполняет JavaScript на сервере — API, SSR-фронтенды, боты и инструменты сборки. Версия имеет значение: фреймворки ориентируются на конкретные LTS-линейки (сейчас чётные релизы, такие как 20.x/22.x). NodeSource подходит для единственного продакшен-рантайма; nvm — для разработчиков, жонглирующих версиями.
Что нужно иметь
- Доступ root/sudo (NodeSource) или обычный пользователь (nvm).
- Проверьте, какая версия Node нужна вашему приложению.
Пошаговая инструкция
Вариант A — NodeSource (системно):
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt -y install nodejs
node -v && npm -v
(RHEL-семейство: используйте соответствующий rpm-скрипт того же проекта, затем sudo dnf install nodejs.)
Вариант B — nvm (для пользователя):
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc
nvm install --lts
nvm use --lts
Запуск приложения как сервиса — используйте менеджер процессов, чтобы оно переживало перезагрузки:
sudo npm install -g pm2
pm2 start app.js --name myapp
pm2 startup && pm2 save
Типичные проблемы
node: command not foundпод sudo/systemd с nvm: nvm живёт в оболочке пользователя — используйте абсолютные пути или NodeSource для сервисов.- Глобальные npm-установки падают с EACCES: с nvm это исчезает; иначе настройте npm prefix на уровне пользователя вместо sudo.
- Приложение умирает после выхода из SSH: это ожидаемо для foreground-процессов — используйте pm2 или systemd-юнит.
Когда обращаться в поддержку
Проблемы рантайма приложений — уровень приложения; по серверным проблемам или увеличению ресурсов откройте тикет.
Частые вопросы
Что выбрать — NodeSource или nvm?
NodeSource — для единственного системного продакшен-рантайма, который работает с systemd-сервисами; nvm — когда нужно переключаться между версиями Node для разных пользователей или проектов.
Какую версию Node.js установить?
Устанавливайте текущую LTS-линейку (чётные номера, например 20.x или 22.x). LTS-релизы получают длительную поддержку безопасности, и именно на них тестируются фреймворки.
Как оставить Node-приложение работать после выхода из SSH?
Запускайте его под менеджером процессов. Установите pm2 глобально, запустите приложение через «pm2 start app.js», а «pm2 startup» и «pm2 save» сохранят его после перезагрузок.
Похожие статьи
Готовы начать? Заказать VPS в Cloud2Y →
