DeployCode

Быстрый старт

От репозитория на GitHub до работающего приложения на вашем сервере.

Первый запуск проходит в мастере «Запустить приложение». Он создаёт проект с окружением production, собирает приложение на вашем сервере и выдаёт ему адрес на deploycode.app с HTTPS.

Что понадобится

  • Репозиторий на GitHub. GitLab и SourceCraft пока не поддерживаются.
  • Сервер: свой VPS с доступом по SSH под root или пользователем с sudo без пароля, либо сервер в подключённом облаке — reg.ru Cloud или Yandex Cloud. См. Требования.

Код

Выберите, откуда взять код. Доступ к GitHub выдаётся через GitHub App — персональный токен не нужен.

  • Если GitHub ещё не подключён, нажмите «Подключить GitHub» и выберите репозитории, которые увидит DeployCode. См. Подключение GitHub.
  • Выберите аккаунт GitHub, репозиторий и ветку (по умолчанию — основная ветка репозитория).
  • Путь к приложению — каталог приложения в репозитории. Для монорепозитория укажите подкаталог, иначе оставьте /.

DeployCode покажет, какой фреймворк он обнаружил, — например, «Обнаружено: Next.js».

Сервер

Выберите сервер из списка или подключите новый кнопкой «Подключить» — мастер добавления сервера откроется прямо здесь. См. Подключение сервера.

У каждого сервера видно свободное место на диске. Если места мало, DeployCode предложит сначала его освободить.

Настройки

Рабочие значения уже подставлены:

  • Проект и Сервис — по умолчанию названы как репозиторий.
  • В «Дополнительных настройках»:
    • Внутренний порт — порт, который слушает приложение внутри контейнера, по умолчанию 3000. См. Фреймворки → Порт.
    • Переменные окружения — по одной в строке, в формате KEY=value. Строки, начинающиеся с #, — комментарии.

Нажмите «Запустить приложение».

Запуск

DeployCode последовательно:

ЭтапЧто происходит
Проверяем серверСвободное место и иноды на диске
Создаём проект и production-окружениеПроект, окружение production и сервис
Выдаём домен deploycode.appСвободный адрес вида <имя>-<суффикс>.deploycode.app
Выполняем развёртываниеСборка Railpack на сервере, обычно 2–6 минут
Проверяем контейнерыЧто реплики запустились
Подключаем HTTPSСертификат Let's Encrypt — после успешной сборки

Страницу можно закрыть: прогресс сохранён, а развёртывание продолжится на сервере. Ход сборки видно по кнопке «Показать логи».

Когда всё готово, появится экран «Настройка завершена» со ссылкой на сайт.

Если что-то пошло не так

Мастер покажет причину и кнопки «Открыть логи» и «Повторить запуск». Созданные ресурсы сохраняются, поэтому повторный запуск продолжит с места ошибки.

Частые причины:

  • «На сервере не хватило памяти» — см. Не хватает памяти при сборке.
  • «На сервере недостаточно места» — мастер предложит освободить место и повторить.
  • Сборка завершилась с ошибкой — откройте логи; частые проблемы собраны в разделе Сборка.

Что настроено автоматически

Новый сервис в существующем проекте

В проекте мастер называется «Новый сервис» и начинается с шага «Тип»: приложение из GitHub или база PostgreSQL. Сервис создаётся в выбранном окружении.

Новые версии выкатываются кнопкой «Развернуть» на странице сервиса — см. Запуск развёртывания.

Что дальше

На этой странице