Главная/Разработка/Node.js

Установка Node.js на сервер и запуск приложения

Установка Node.js на Ubuntu делается тремя способами: через менеджер версий nvm, через репозиторий NodeSource или пакетом apt. Для сервера берут LTS-ветку, то есть версию с долгой поддержкой: на странице загрузок nodejs.org на 15 октября 2026 это Node.js 24. Затем приложение запускают под менеджером процессов PM2 или systemd и ставят перед ним Nginx.

4 мин чтенияДанные проверены 16 октября 2026

Ответ за 30 секунд

На сервер ставьте LTS-ветку Node.js через nvm или NodeSource и запускайте приложение под PM2 или systemd на локальном порту. Службе systemd нужен абсолютный путь к node: после установки через nvm он лежит в домашнем каталоге пользователя, а не в /usr/bin.

Маркетплейс создаёт сервер с уже установленным Node.js, ставить окружение не нужно.

Где запускать Node.js: маркетплейс, App Platform или VPS

01 · 1 мин

Установка Node.js на Ubuntu: nvm, NodeSource или apt#

СпособПлюсМинус
apt install nodejsОдна команда, обновления вместе с системойВерсия в репозиториях Ubuntu обычно отстаёт
NodeSourceСвежая LTS-ветка, обновление через aptПодключается сторонний репозиторий
nvmНесколько версий на одной машине, смена командойСтавится на пользователя, а не на систему

Для одного приложения на сервере удобен NodeSource: после подключения репозитория Node.js обновляется как обычный пакет. Если проектам нужны разные версии, ставьте nvm. Скрипты подключения берите с официальных страниц NodeSource и репозитория nvm: ссылки с номерами версий меняются.

# через nvm, под пользователем приложения
nvm install --lts
node -v && npm -v

# через apt после подключения репозитория NodeSource
sudo apt install -y nodejs

Менеджер пакетов npm идёт вместе с Node.js, отдельной установки он не требует. На Windows Node.js ставится установщиком с nodejs.org, версию проверяют той же командой node -v.

02 · 1 мин

Запуск Node.js-приложения на сервере: PM2 или systemd#

Команда node server.js остановится вместе с терминалом, поэтому приложению нужен менеджер процессов, который перезапустит его после сбоя и после перезагрузки сервера.

const express = require('express');
const app = express();
app.get('/', (req, res) => res.send('работает'));
app.listen(process.env.PORT || 4000, '127.0.0.1');

Приложение слушает локальный адрес 127.0.0.1: наружу его выставляет Nginx. За прокси в Express добавляют app.set('trust proxy', 1), иначе в запросах окажется адрес прокси вместо адреса посетителя.

PM2systemd
Запускpm2 start server.js --name siteФайл службы и systemctl enable --now
Автозапускpm2 save и pm2 startupВходит в службу
Несколько процессовРежим кластера, ключ -i maxНесколько экземпляров службы
Путь к nodeБерётся из окруженияУказывается полностью в ExecStart

Ловушка systemd: после установки через nvm node лежит в каталоге вида ~/.nvm/versions/node/…/bin, и в ExecStart нужен именно этот путь. Узнать его можно командой which node под пользователем приложения.

03 · 1 мин

Nginx перед Node.js: проксирование, WebSocket и HTTPS#

Nginx принимает HTTPS на порту 443 и передаёт запросы на локальный порт приложения. Для socket.io и других WebSocket-соединений в блок добавляют две строки с заголовками Upgrade:

location / {
    proxy_pass http://127.0.0.1:4000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
}

Сертификат выпускает Certbot, а с Caddy достаточно одной строки reverse_proxy. Порядок установки самого веб-сервера: установка Nginx.

04 · 1 мин

Node.js в Docker: Dockerfile для приложения#

FROM node:24-slim
WORKDIR /app
COPY package*.json ./
RUN npm ci --omit=dev
COPY . .
USER node
CMD ["node", "server.js"]

Файлы package.json копируются первыми, поэтому слой с зависимостями пересобирается, только когда они меняются. Команда npm ci ставит версии строго по lock-файлу, а ключ --omit=dev оставляет в образе только то, что нужно для работы. Запуск от пользователя node снижает ущерб, если в приложении найдут уязвимость.

Заберите тег образа из Docker Hub под нужную линию Node.js и не оставляйте latest: иначе при пересборке версия сменится сама.

Инструмент · 1 мин

Где запускать Node.js: маркетплейс, App Platform или VPS#

В маркетплейсе Таймвеб Клауд есть образ Node.JS (6 328 установок на 14 октября 2026): он создаёт сервер с уже установленным окружением. Версию проверьте командой node -v и при необходимости переставьте через nvm. Если проект собирается на сервере из Git и не требует администрирования, посмотрите платформу: фронтенды на React, Vue, Next.js, Nuxt, Angular и Svelte деплоятся из репозитория, остальное принимается через Docker, тарифы от 1 ₽ в месяц.

Разбор сборки фронтенда по фреймворкам: React и Vue, Nuxt.

Какой сервер взять под Node.js

Три ответа, и калькулятор подберёт готовую конфигурацию

Что запускаете
Где собирается проект
Где база данных

06 · 1 мин

Вопросы об установке Node.js на сервер#

Как установить Node.js на Ubuntu последней LTS-версии?

Подключить репозиторий NodeSource и поставить пакет nodejs через apt либо выполнить nvm install --lts. Версию проверить командой node -v.

Почему служба systemd не находит Node.js, поставленный через nvm?

nvm меняет PATH только в сессии пользователя, а systemd её не читает. В ExecStart укажите полный путь к node, который показывает команда which node.

Что выбрать для запуска Node.js на сервере: PM2 или systemd?

systemd уже есть в системе и подходит для одного процесса. PM2 удобен, когда нужен кластерный режим, просмотр логов и перезапуск без простоя одной командой.

Нужен ли отдельный хостинг для Node.js, если сайт собран на Next.js или Nuxt?

Для статической сборки сервер Node.js не нужен, хватит платформы деплоя. Для серверного рендеринга процесс Node.js должен работать постоянно, как описано выше.

Как проверить, что npm установился вместе с Node.js?

Выполнить npm -v. Если команда не найдена после установки через apt, поставьте пакет npm отдельно: в некоторых репозиториях он отделён от nodejs.

Почему этому можно верить

Как мы проверяли

Цены с сайта провайдераСняты вручную, у каждой цены указана дата проверки.
Всё можно повторитьКоманды и расчёты описаны так, что их повторит любой читатель.
Независимый справочникНе связан с разработчиками приложений и провайдерами и пишет о минусах тоже.

Источники цифр на этой странице: VPS и VDS серверы Таймвеб Клауд, timeweb.cloud/services/vds-vps, проверено 14 октября 2026; App Platform Таймвеб Клауд, timeweb.cloud/services/apps, проверено 14 октября 2026; Маркетплейс приложений Таймвеб Клауд, timeweb.cloud/marketplace, проверено 14 октября 2026; Node.js: страница загрузок, актуальная LTS-линия, nodejs.org/en/download, проверено 15 октября 2026.

SBРедакция SelfBase · обновлено 16 октября 2026

Установите приложение без консоли

Маркетплейс ставит готовый образ на новый сервер: Docker, GitLab, Nextcloud, n8n и другие.

  • Docker, n8n, OpenClaw, GitLab, Nextcloud
  • Ставится при создании сервера
  • Почасовая оплата сервера
  • Root-доступ остаётся у вас
Где запускать