Назад к документации
Документация API Gateway
api-gateway — реверс-прокси и API-шлюз с JWT-аутентификацией по маршрутам, ролевым доступом, рейт-лимитингом, service discovery по labels контейнеров и публикацией событий. Исходный код — sarnas-it/api-gateway.
Документация состоит из трёх частей. Начните с быстрого старта, если хотите поднять шлюз за пять минут; загляните в справочник, когда нужно понять конкретное поле; выберите сценарий, если решаете прикладную задачу.
- Быстрый старт — минимальный конфиг, локальный запуск и Docker, проверка и первые шаги.
- Конфигурация — полный справочник по всем секциям и полям, которые читает код.
- Сценарии — готовые рецепты: JWT и RBAC, аудит, CORS, ACME, discovery, взвешенная балансировка и другое.
Что умеет шлюз
- Маршрутизация по префиксу пути и по
Host(включая wildcard*.example.com). - JWT-аутентификация и ролевой доступ на уровне отдельного маршрута.
- Рейт-лимитинг: per-route (token bucket на IP) и глобальный.
- Health checks таргетов и circuit breaker на ошибках транспорта.
- Взвешенная балансировка нескольких таргетов одного маршрута.
- CORS, Basic Auth, проброс claims в заголовки, HMAC-подпись запросов.
- Раздача статики и SPA с fallback на
index.html. - Service discovery Docker/Podman по labels с аварийным фолбэком в файл состояния.
- Вебхуки и NATS: события
on_request/on_response, батчинг, backpressure. - Автоматический TLS (Let's Encrypt, в т.ч. staging), метрики и трейсинг (OpenTelemetry).
Как читать справочник
Значения по умолчанию действуют, когда поле не задано в YAML. Поведение, которое легко понять неправильно (например, max_request_body_size: 0 или семантика weight), отмечено в тексте и в сценариях. Все примеры конфигов можно копировать и запускать.