feat: добавить Image Gateway с кешем Souin

- добавлена сборка Caddy с Souin, Otter и NutsDB

- добавлена конфигурация dev, prod и test Docker Compose

- настроено кеширование через Otter L1 и NutsDB L2

- добавлены e2e-тесты Bun для кеша, restart и purge

- добавлена документация по запуску, API кеша и тестам
This commit is contained in:
2026-05-04 12:18:37 +03:00
commit 0751c4b469
26 changed files with 1608 additions and 0 deletions

26
.env.example Normal file
View File

@@ -0,0 +1,26 @@
# === imgproxy ===
# Подпись URL (опционально, только если есть серверная генерация URL)
# Для SPA оставьте пустыми — защита через ALLOWED_SOURCES
IMGPROXY_KEY=
IMGPROXY_SALT=
# Количество воркеров обработки (по числу CPU)
IMGPROXY_WORKERS=2
# Максимальное разрешение исходника в мегапикселях
IMGPROXY_MAX_SRC_RESOLUTION=20
# Whitelist доменов-источников (через запятую, пусто = все)
# Пример: example.com,cdn.example.com
IMGPROXY_ALLOWED_SOURCES=
# Таймаут загрузки исходника (секунды)
IMGPROXY_DOWNLOAD_TIMEOUT=30
# === Network (опционально) ===
# HTTP-прокси для imgproxy (если требуется в корпоративной сети)
# HTTP_PROXY=
# HTTPS_PROXY=
# NO_PROXY=localhost,127.0.0.1
# === Caddy ===
# Домен для HTTPS (пустое значение = localhost без HTTPS)
DOMAIN=
# Порт Caddy для локальной разработки
CADDY_PORT=8888