# Как выложить Node.js приложение в интернет

https://netrun.io/blog/nodejs-prilozhenie

_5 октября 2026 г. · 4 мин чтения_

> Чтобы выложить Node.js приложение в интернет, укажите в package.json зависимости и команду запуска, слушайте порт из переменной PORT и загрузите код без node_modules. Netrun определит Node.js, установит зависимости, запустит приложение и для веб-сервиса выдаст ссылку с HTTPS — pm2, nginx и Dockerfile не нужны. Ключи и токены задаются в секретах, а при сбое приложение перезапускается само.

- В package.json Node.js-приложения должны быть перечислены зависимости и указана команда запуска.
- Веб-сервис на Node.js должен слушать адрес 0.0.0.0 и порт из process.env.PORT.
- Fastify по умолчанию слушает только 127.0.0.1, поэтому для работы в интернете ему нужно явно указать host: "0.0.0.0".
- Менеджер процессов pm2 в Netrun не нужен: при падении платформа перезапускает приложение сама.
- Ключи, токены и строку подключения к базе Netrun хранит зашифрованными и передает приложению через переменные окружения.

Запуск Node.js-сервиса по классике — это аренда VPS, установка Node, менеджер процессов вроде pm2, обратный прокси через nginx и сертификат для HTTPS. Много ручной настройки ради одного приложения.

В Netrun вы загружаете код, а сборку, запуск и перезапуск берем на себя. Ниже — по шагам.

## 1. Подготовьте проект

В package.json должны быть зависимости и команда запуска приложения. Секреты — ключи, токены, строку подключения к базе — читайте из переменных окружения, а не из кода.

## 2. Загрузите код

ZIP-архивом или импортом из GitHub-репозитория, в том числе приватного. Папку node_modules класть не нужно.

## 3. Netrun соберет и запустит

Платформа определит Node.js, установит зависимости и запустит приложение — Dockerfile и настройка процесса не нужны.

## 4. Укажите секреты, если они нужны

Когда Netrun спросит про переменные окружения, впишите значения ключей и токенов. Они хранятся отдельно от кода.

## 5. Получите ссылку

Для веб-сервиса Netrun выдаст публичный адрес с HTTPS. Логи и статус видны в кабинете, а при сбое приложение перезапустится автоматически.

На бесплатном тарифе проект засыпает при простое — для сервиса, который должен отвечать всегда, выберите платный тариф с работой без простоев. [Попробовать Netrun](https://netrun.io/).

## Частые вопросы

### Как правильно слушать порт в Express и Fastify?

В Express достаточно app.listen(process.env.PORT || 3000): по умолчанию он слушает все адреса. В Fastify адрес нужно указать явно: fastify.listen({ port: Number(process.env.PORT), host: "0.0.0.0" }), иначе приложение будет доступно только изнутри сервера.

### Нужен ли pm2 или systemd?

Нет. Перезапуск при падении платформа берет на себя, а логи приложения видны в кабинете. Достаточно обычной команды запуска, например node index.js, в скрипте start.

### Подойдет ли Netrun для приложения на TypeScript?

Да, если в package.json есть скрипт сборки, который компилирует TypeScript, и команда запуска готового кода. Проверьте, что проект собирается у вас локально той же командой: ошибки сборки в Netrun видны в логах в кабинете.

### Можно ли запустить на Node.js Telegram-бота?

Да, ботов на telegraf или grammY Netrun запускает как фоновый процесс без публичной ссылки. На бесплатном тарифе бот работает ограниченное время, а круглосуточно — на тарифе Pro.

### Почему сервис медленно отвечает после паузы?

На бесплатном тарифе веб-сервис засыпает без запросов и просыпается при первом обращении, поэтому первый ответ после паузы занимает несколько секунд. На тарифе Pro проект не засыпает.
