Перейти к основному содержимому

Деплой приложения

Автоматический деплой​

У проекта два репозитория, и они деплоятся независимо: push в main репозитория backend обновляет только backend, push в frontend — только frontend.

Деплой происходит автоматически при каждом git push в ветку main.

git add .
git commit -m "feat: add user profile page"
git push origin main

Через 2–5 минут приложение обновится на https://project-NN.simple-env.site.

Статусы деплоя​

Следи за пайплайном в Gitea Actions. Деплой состоит из нескольких шагов — если любой упал, следующие не запустятся.

Rolling update — ноль даунтайма​

Платформа использует rolling update: новая версия поднимается до того как старая отключается. Пользователи не заметят перерыва в работе.

Откат на предыдущую версию​

Если новая версия сломана — сделай git revert и запушь:

# Откатить последний коммит
git revert HEAD
git push

# Или откатить конкретный коммит
git revert <commit-hash>
git push

Пайплайн задеплоит предыдущую рабочую версию.

Проверка что деплой прошёл​

curl https://project-NN.simple-env.site/api/health/
# Ожидаемый ответ: {"status": "ok"}

Масштабирование реплик​

Если нужно больше реплик (например под нагрузкой), измени deploy.yaml в соответствующем репозитории:

# backend/deploy.yaml
backend:
replicas: 2 # было 1
# frontend/deploy.yaml
frontend:
replicas: 2

Запушь — платформа автоматически запустит дополнительные экземпляры.

Лимиты

Максимум 20 pods на проект (квота namespace). Обычно 1–2 реплики достаточно для учебного проекта.