Главная/Разработка/Node.js
Установка Node.js на сервер и запуск приложения
Установка Node.js на Ubuntu делается тремя способами: через менеджер версий nvm, через репозиторий NodeSource или пакетом apt. Для сервера берут LTS-ветку, то есть версию с долгой поддержкой: на странице загрузок nodejs.org на 15 октября 2026 это Node.js 24. Затем приложение запускают под менеджером процессов PM2 или systemd и ставят перед ним Nginx.
Ответ за 30 секунд
На сервер ставьте LTS-ветку Node.js через nvm или NodeSource и запускайте приложение под PM2 или systemd на локальном порту. Службе systemd нужен абсолютный путь к node: после установки через nvm он лежит в домашнем каталоге пользователя, а не в /usr/bin.
Маркетплейс создаёт сервер с уже установленным Node.js, ставить окружение не нужно.
Где запускать Node.js: маркетплейс, App Platform или VPS24LTS-линия Node.js на 15.10.2026
6 328установок Node.JS из маркетплейса на 14.10
4000порт в примерах страницы
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), иначе в запросах окажется адрес прокси вместо адреса посетителя.
| PM2 | systemd | |
|---|---|---|
| Запуск | 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.
Установите приложение без консоли
Маркетплейс ставит готовый образ на новый сервер: Docker, GitLab, Nextcloud, n8n и другие.
- Docker, n8n, OpenClaw, GitLab, Nextcloud
- Ставится при создании сервера
- Почасовая оплата сервера
- Root-доступ остаётся у вас