Проблема ручного деплоя

Большинство небольших проектов живут в режиме «деплоим когда страшно и руки дошли». Разработчик заходит по SSH, делает git pull, перезапускает сервисы. Иногда что-то ломается. Иногда в пятницу вечером.

Это не лень — это отсутствие правильной инфраструктуры. И это решается.

Минимальный стек для автоматизации

  • GitHub Actions — бесплатно до 2000 минут в месяц, хватает для большинства проектов
  • Docker — контейнеры гарантируют одинаковое окружение на тесте и проде
  • Nginx + Certbot — проксирование и SSL без ручной настройки
  • Яндекс.Облако / VDS — хостинг с данными в России

Как выглядит пайплайн

Разработчик открывает Pull Request. GitHub Actions запускает тесты — PR нельзя смержить, если тесты красные. После мержа в main собирается Docker-образ, летит на сервер, healthcheck проверяет, что сервис поднялся. Если нет — автоматический откат.

Весь цикл от пуша до прода: 3–5 минут.

Что это даёт на практике

Меньше страха. Если деплой автоматический и обратимый — команда деплоит чаще. Маленькие изменения безопаснее больших.

Меньше ошибок. Человек забывает шаги, скрипт — нет. «Забыли сделать migrate» уходит в прошлое.

Прозрачность. Каждый деплой залогирован: кто, когда, что изменилось.

Сколько это стоит

Настройка базового CI/CD пайплайна стоит от 50 000 рублей — разовая работа. Экономия времени разработчиков за первый квартал перекрывает эту сумму.