Перейти к содержанию

Вопросы про JavaScript/Node.js приложения

Как загрузить Node.js приложение

Для загрузки Node.js приложения упакуйте ваш код в zip-архив. Убедитесь, что в архиве присутствует файл package.json — именно по нему система определяет, что приложение написано на Node.js.

Внимание

В архиве должен быть ровно один файл package.json. Если их несколько или нет вовсе — система не сможет распознать проект как Node.js приложение.

Как выбрать версию Node.js

При загрузке приложения на втором шаге вы можете выбрать нужную версию Node.js. Доступные версии:

Версия Описание
latest Последняя актуальная версия (по умолчанию)
24 Node.js 24
23 Node.js 23
22 Node.js 22 (LTS)
21 Node.js 21
20 Node.js 20 (LTS)
19 Node.js 19
18 Node.js 18 (LTS)
17 Node.js 17
16 Node.js 16
15 Node.js 15
14 Node.js 14
12 Node.js 12

Как установить npm-пакеты

По умолчанию система выполняет команду npm install для установки зависимостей из вашего package.json. Если вам нужна другая команда для установки пакетов (например, yarn install), вы можете изменить её на втором шаге загрузки приложения в поле "Команда установки пакетов".

Если вам необходимо установить дополнительные системные пакеты или выполнить нестандартные команды перед сборкой, используйте файл deployf-install.sh, подробнее здесь.

Как изменить команду запуска

Команда для запуска определяется автоматически на основании содержимого package.json (см. ниже). Вы можете изменить её на втором этапе загрузки приложения в поле "Команда для запуска".

Примеры команд запуска:

node index.js
node src/app.js
npm start

Как определяется точка входа приложения

Система определяет точку входа Node.js приложения в следующем порядке:

  1. Поле main в package.json — стандартная точка входа Node.js.
  2. Скрипт scripts.start — если в нём указана команда вида node <файл>, извлекается путь к файлу.
  3. Fallback — если ни один из вариантов не найден, используется index.js.

Пример package.json:

{
  "name": "my-app",
  "main": "src/app.js",
  "scripts": {
    "start": "node src/app.js"
  }
}

Не нашел ответа на вопрос

У вас остались вопросы по теме? Задайте их нам в чате поддержки в телеграм