На главную
- Облачные базы данных
- Хранилище S3
- Kubernetes
- Apps
- Обзор
- Принципы работы
- Подключение репозиториев
- Деплой frontend-приложений
- Деплой backend-приложений
- Деплой из Dockerfile
- Управление Apps в панели
- Частые вопросы об Apps
Деплой приложения Express
Пошаговая инструкция по деплою приложения Express в сервисе Apps и устранению возможных ошибок.
Деплой проекта
Чтобы развернуть приложение, созданное на Express.js, перейдите в раздел Apps и кликните на кнопку «Создать».
Шаг 1. Выбор приложения
В пункте «Тип» перейдите на вкладку Backend и кликните Node.js — Express.
Также выберите нужную версию Node.js.
Шаг 2. Подключение репозитория
Вы можете подключить репозиторий:
- Из своего аккаунта GitHub, GitLab или BitBucket. Кликните на название платформы, авторизуйтесь и выберите нужный репозиторий. Если вы уже авторизованы, панель сразу покажет доступные репозитории.
- По URL, указав ссылку на репозиторий, созданный на любой платформе. Кликните «Подключите git-репозиторий по URL» (либо «Добавить аккаунт» → «Подключите git-репозиторий по URL») и укажите Git URL репозитория. Если репозиторий приватный, введите реквизиты доступа.
Подробнее о подключении репозиториев — здесь.
Шаг 3. Выбор ветки и коммита
1. Выберите ветку для деплоя.
2. По умолчанию мы включаем опцию «Сборка по последнему выполненному коммиту». В этом случае сервис Apps выполнит деплой по самому актуальному коммиту, а в дальнейшем будет автоматически пересобирать приложение при добавлении новых коммитов в репозиторий.
При необходимости вы сможете отключить автодеплой в дальнейшем.
Если вы хотите выбрать конкретный коммит вручную — отключите эту опцию.
Шаг 4. Регион и конфигурация сервера
Приложение Express
должно быть развернуто на отдельном облачном сервере. Выберите регион размещения сервера и его конфигурацию.
В дальнейшем, если потребуется, вы сможете перейти на более мощный тариф.
Шаг 5. Настройка параметров сборки
Сервис автоматически определит команду сборки и запуска для вашего проекта, поэтому в большинстве случаев параметры можно оставить без изменений.
По умолчанию для сборки приложения Express мы выполним следующее:
apt-get install -y nodejs --fix-missing
npm install pm2@latest -g
npm install express
- Если в проекте есть файл
package.json
и используетсяyarn
:
apt-get remove -y cmdtest yarn
npm install --global yarn
cd /%s && yarn install --check-files" % (DIRECTORY)
- В остальных случаях при наличии
package.json
:
"cd /%s && npm i" % (DIRECTORY)
Если вы понимаете, что вам нужно модифицировать процесс сборки, например, если проекту требуются дополнительные параметры или модули, вы можете задать дополнительную команду сборки. Указать несколько параметров можно, разделяя их с помощью &&
. Скажем, если требуется установить определенные драйверы, добавьте в команду сборки:
apt install имя_пакета
В качестве команды запуска по умолчанию будет использоваться:
pm2 start --no-daemon файл.js
Где файл.js
— файл запуска приложения. Чтобы приложение корректно запустилось, он может называться app.js
, server.js
, main.js
или index.js
.
У вас будет возможность внести изменения в любые из этих параметров в дальнейшем и перезапустить деплой с новыми настройками, если потребуется.
Шаг 6. Информация о приложении
Задайте свое имя приложения, если требуется, и комментарий к нему. Это данные, которые будут отображаться в панели управления.
Также выберите, в какой проект его нужно добавить.
Эти настройки также можно изменить в дальнейшем.
Шаг 7. Деплой
Нажмите «Запустить деплой». Как только процесс начнется, вы увидите лог деплоя на вкладке «Деплой».
Как правило, он содержит всю необходимую информацию для устранения возможных ошибок. Если что-то пойдет не так, например, из-за наличия ошибок в коде, в логе будут выведены уведомления о них с уточнением причины проблемы.
При первом развертывании проекта установка сервера может занять некоторое время. Как только процесс завершится, статус приложения обновится, а запись о завершении будет выведена в логе.
Готово! Ваш проект развернут и готов к работе.
В дальнейшем Apps будет отслеживать обновления в репозитории и, если включен автодеплой, автоматически перезапускать проект с новыми изменениями.
IP-адрес приложения и бесплатный технический домен, привязанный к нему по умолчанию, можно найти на вкладе «Дашборд». Приложение будет доступно по 443 порту; порт 80 также открыт.
Устранение неполадок
Не удается выполнить развертывание
Если с развертыванием возникают проблемы, в первую очередь проверьте лог деплоя. Вы сможете определить, в какой момент что-то пошло не так.
Зачастую проблемы связаны с командой запуска. Проверьте, что всё в вашей среде разработки работает с pm2
. Убедитесь, что все модули, необходимые для запуска приложения, присутствуют в файле package.json
.
Please add build instruction to your script section in package.json
Проблема связана с тем, что команда сборки yarn build
обращается к файлу package.json
, и если значение директивы build
не указано, возникает ошибка.
Чтобы устранить ее, необходимо добавить необходимые директивы в секцию scripts
файла package.json
. Подробнее об использовании scripts
— здесь.
Была ли статья полезна?