Деплой приложения из GitHub
Зачем это нужно
Отправили код в GitHub — получили рабочий адрес. Репозиторий подключается один раз, после чего каждый git push в продакшн-ветку сам запускает сборку и выкатку. Для большинства распространённых фреймворков Dockerfile не нужен: Next.js, FastAPI, Spring Boot, Django, Go и ещё полтора десятка определяются автоматически.
Как выкатить приложение
- Откройте проект и перейдите в Applications.
- Нажмите Deploy application.
- Выберите окружение (облачное или VM — из VM-окружения так деплоить нельзя, см. «Подводные камни»).
- Выберите карточку From GitHub и нажмите Continue.
- Если аккаунт GitHub ещё не подключён, нажмите Connect GitHub и разрешите доступ GitHub-приложению dada-cloud. Позже можно добавить ещё аккаунты и организации через Add another account.
- Найдите и выберите репозиторий. У приватных стоит иконка замка.
- Проверьте шаг Configure:
- Application name — подставляется из имени репозитория, можно изменить (строчные буквы, цифры, дефисы).
- Framework — определяется по содержимому репозитория; если угадал неверно, выберите из списка вручную (сгруппирован по Java/JVM, Python, JavaScript/TypeScript, статика/Dockerfile).
- Port, Profile (small/medium/large), Production branch, Root directory.
- Auto-deploy — включён по умолчанию: каждый пуш в продакшн-ветку пересобирает приложение.
- Нажмите Deploy. Мастер тут же покажет живой лог сборки.
- После успешной сборки появятся действия Retry, View deployments и Open app.
Подводные камни
- Смена Root directory заново запускает определение фреймворка — при потере фокуса полем.
- Если определить фреймворк не удалось, порт по умолчанию
8080, а фреймворк выбирается руками. - После нажатия Deploy выбор репозитория и поля Configure блокируются: спецификацию, с которой ушла сборка, на лету не поправить. Исправляйте после завершения — в настройках приложения или повторным импортом.
- Репозиторий одновременно связан только с одним приложением. Повторная привязка той же пары «репозиторий — приложение» считается уже существующей и просто запускает новую выкатку, а не падает с ошибкой.
- Пункт меню Builds (подключения репозиториев и история) виден только ролям Owner и Admin. Developer может пройти этот мастер (нужно только право на запись), но списка Builds потом не увидит — ему подойдёт вкладка Deployments внутри приложения.
- VM-окружения показывают предупреждение и полностью блокируют деплой с этой страницы — используйте свою виртуальную машину или подключение существующих нагрузок.
Чего пока нет
- Preview-выкаток на каждый pull request — автоматически деплоится только одна настроенная продакшн-ветка.
- Настройки кэша сборки.
- Смены порта, профиля и фреймворка прямо из этого мастера — после создания приложения это живёт в его настройках.
Куда дальше
- Деплой из образа или Compose — если сборка у вас своя.
- Кнопка «Deploy on Dada» — выкатка чужого репозитория в один клик.
- Свой домен и HTTPS — чтобы приложение жило на вашем адресе.