Сборка (Railpack)
Как DeployCode собирает приложение из репозитория.
Приложения собираются Railpack — он сам определяет язык и фреймворк, ставит зависимости и выбирает команду запуска. Dockerfile не нужен. Сборка выполняется на вашем сервере.
По умолчанию используется Railpack 0.35.0.
Настройки «Сборка и запуск»
Если автоопределение не подходит, команды можно переопределить в настройках приложения. Переопределения хранятся в DeployCode и не меняют файлы репозитория.
| Настройка | Что делает |
|---|---|
| Команда установки | Заменяет установку зависимостей |
| Команда сборки | Заменяет сборку |
| Результат сборки | Определить автоматически, Веб-сервис или Статический сайт |
| Команда запуска | Заменяет команду запуска (кроме статического сайта) |
| Каталог результата | Каталог с готовыми файлами — обязателен для статического сайта |
Результат сборки
- Определить автоматически — Railpack сам решает, запускать сервер или отдавать статику.
- Веб-сервис — всегда запускать приложение как сервер, даже если Railpack распознал SPA.
- Статический сайт — отдавать файлы из каталога результата встроенным веб-сервером. Команду запуска для статического сайта указать нельзя.
Путь сборки
Если приложение лежит не в корне репозитория (монорепозиторий), укажите путь сборки — относительный путь к каталогу приложения.
Переменные Railpack
Railpack настраивается переменными вида RAILPACK_* — например, RAILPACK_NODE_VERSION или
RAILPACK_PYTHON_VERSION. Задайте их как переменные приложения: они
доступны и при сборке, и при запуске. Переменные для каждого языка — в разделе
Фреймворки.
Кеш сборки
Кеш Railpack переиспользуется между деплоями и ограничен 10 ГБ на сервере. Если сборка ведёт себя странно из-за кеша, запустите деплой с очисткой кеша.