Все кейсы

Своя инфраструктура: тринадцать приложений разворачиваются коммитом в git

Свой кластер, где живут мои проекты: приложения описаны как пакеты, разворачиваются автоматически из репозитория, секреты хранятся зашифрованными рядом с кодом. Ценность прямая: инфраструктуру, которую я передам, можно поддерживать без меня.

Контекст

Мои проекты — kopim, этот сайт, автоматизации на n8n и служебные сервисы — живут на своём кластере. Задача: чтобы всё это разворачивалось, обновлялось и восстанавливалось из репозитория, а не из памяти одного человека.

Что сделано

Всё описано в git. Тринадцать приложений, у каждого свой Helm-чарт и своя запись в ArgoCD. Корневое приложение подхватывает остальные: чтобы добавить новое, достаточно коммита, без ручных команд в кластере. Ручные правки в кластере ArgoCD откатывает обратно к тому, что в репозитории.

Деплой без рук. Сборка приложения публикует образ с тегом коммита и сама меняет тег в репозитории инфраструктуры; ArgoCD замечает изменение и выкатывает. Откат — отмена этого коммита. Так обновляются этот сайт, kopim и ещё два приложения: 179 коммитов в истории сделал робот CI.

Секреты рядом с кодом. Файлы с секретами лежат в репозитории зашифрованными (SOPS + age) и расшифровываются отдельным скриптом при установке. ArgoCD ключей не видит, закрытый ключ в кластере не хранится.

Резервные копии. Базы данных копируются каждую ночь и хранятся 30 дней; отдельный сценарий на n8n шифрует свежие копии, уносит их за пределы кластера и предупреждает, если копии нет. Есть аварийный пакет и пошаговая инструкция на случай, если кластер придётся поднимать с нуля.

Внешний сервер тоже в коде. Внешний сервер только принимает HTTPS и пробрасывает трафик в кластер, каждому приложению открыт только его собственный вход. Настройка сервера лежит в отдельном репозитории, чтобы поднять его заново на новом адресе.

Масштаб: 287 коммитов в репозитории кластера с мая по сентябрь 2026 года, 13 чартов, 25 служебных скриптов.

Как это выглядит

Приложения кластера в ArgoCD и коммиты, которые делает робот CI при каждом деплое. Показаны только публичные проекты, хеши скрыты
Приложения кластера в ArgoCD и коммиты, которые делает робот CI при каждом деплое. Показаны только публичные проекты, хеши скрыты
Другие кейсы

Кейсы и личные проекты