gitaspen docs
Документация

Эксплуатация

От чистой машины до выката: сеть, контейнеры, база, секреты, копии, наблюдение.

Docker на сервере: установка, настройка, обслуживание

Инструкция доводит чистый сервер до состояния «Docker и Compose работают, приложения публикуются безопасно, диск не забивается логами». Отдельным разделом — полная переустановка, когда прежняя установка сломана.

7 минут

HTTPS для домена: nginx + Let's Encrypt

Инструкция доводит сервер от «есть чистая машина и домен» до «сайт открывается по HTTPS, сертификат продлевается сам». Каждый шаг заканчивается проверкой с однозначным ожидаемым результатом: если результат другой — переходите к разделу «Типичные отказы», не выполняя следующий шаг.

13 минут

База данных: постановка, схемы, миграции

Как довести хранилище от «базы нет» до состояния «сервисы работают со своими схемами, изменения схемы выкатываются и откатываются». Документ описывает PostgreSQL; в нём два способа постановки — своя база в контейнере рядом с сервисом и внешняя управляемая база у провайдера.

25 минут

Базовая настройка сервера: от выдачи машины до готовности к Docker

Инструкция доводит только что выданную машину до состояния, с которого начинается установка Docker: система обновлена, работа идёт под отдельным пользователем, вход — только по ключу, межсетевой экран включён, время синхронизировано, журналы ограничены по размеру. Каждый шаг заканчивается проверкой с однозначным ожидаемым результатом: если результат другой — переходите к разделу «Типичные отказы», не выполняя следующий шаг.

20 минут

Журналы: формат, сбор, хранение

Документ доводит установку от «сервисы что-то пишут в вывод контейнера» до «записи всех сервисов лежат в одном месте, ищутся по идентификатору запроса, хранятся ограниченный срок и не содержат секретов».

16 минут

Запуск приложения на сервере: файл compose, сети, проверки

Как довести сервер от состояния «Docker установлен, код и значения на месте» до состояния «приложение работает, шлюз отвечает на 127.0.0.1:8000, наружу не смотрит ни одна часть». Это то исходное состояние, которое требуют HTTPS для домена и релиз и выкат: оба начинают с работающего шлюза на loopback.

22 минуты

Наблюдение: метрики, показ, оповещения

Документ доводит установку от «сервис выкачен и закрыт шлюзом» до «числа снимаются, графики открываются, оповещение приходит на проверенный отказ». Каждый шаг заканчивается проверкой с однозначным ожидаемым результатом: если результат другой — переходите к разделу «Типичные отказы», не выполняя следующий шаг.

31 минута

Обмен сообщениями между сервисами: Kafka

Как довести обмен от «сервисы дёргают друг друга запросами» до состояния «работает брокер, темы созданы с известными настройками, события публикуются без потерь, неразобранное складывается отдельно и разбирается». Документ описывает контракт сообщений и постановку Kafka в контейнерах рядом с приложением.

45 минут

Резервное копирование и восстановление

Что копировать, куда, как проверять и как восстанавливаться. Документ исходит из того, что резервная копия существует не сама по себе, а ради восстановления: непроверенная копия равнозначна её отсутствию.

6 минут

Релиз и выкат без простоя

Как собрать воспроизводимый релиз и выкатить его так, чтобы пользователи не увидели перерыва, а неудачный выкат откатывался за секунды.

19 минут

Секреты: хранение, доставка, ротация

Документ доводит систему до состояния «ни одно секретное значение не лежит в репозитории и в образе; рядом с каждой частью системы лежит её файл значений; значение заменяется без простоя». Исходное состояние: репозиторий с кодом, части системы описаны файлами compose, сервер с Docker.

19 минут

Сетевой контур: от домена до микросервиса

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

8 минут

Частная сеть между серверами

Инструкция соединяет несколько серверов частной сетью на WireGuard: у каждой машины появляется адрес, по которому её видят остальные машины контура и не видит интернет. После выполнения сервисы обращаются друг к другу по этим адресам, а наружу по-прежнему смотрят только порты 80 и 443 на сервере шлюза.

26 минут