deploy/.env.example — все required/опц. переменные (POSTGRES_PASSWORD, REGISTRY, *_TAG, OPENIDDICT_ISSUER/CERT_PASSWORD, FM_* бэкапа, Cors/RateLimiting/MoySklad). docs/secrets.md — таблица переменных, где живут секреты (SMTP в БД, сертификаты в volume), ротация, гигиена. compose: api получает OpenIddict__Issuer (за прокси обязателен) и OpenIddict__CertPassword из .env. compose config валиден. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
44 lines
3.1 KiB
Plaintext
44 lines
3.1 KiB
Plaintext
# food-market — пример переменных окружения для деплоя.
|
||
#
|
||
# Скопировать в deploy/.env и заполнить значениями (.env в .gitignore — НЕ коммитить).
|
||
# cp deploy/.env.example deploy/.env && $EDITOR deploy/.env
|
||
#
|
||
# docker-compose читает deploy/.env автоматически. Описание секретов и ротация —
|
||
# docs/secrets.md. Ключи OpenIddict — docs/openiddict-keys.md.
|
||
|
||
# ─── Реестр образов и теги (docker-compose) ──────────────────────────────────
|
||
# Откуда тянуть образы. Локальный registry на stage — 127.0.0.1:5001 (см. CLAUDE/memory).
|
||
REGISTRY=127.0.0.1:5001
|
||
API_TAG=latest
|
||
WEB_TAG=latest
|
||
PUBLIC_TAG=latest
|
||
|
||
# ─── База данных (ОБЯЗАТЕЛЬНО) ───────────────────────────────────────────────
|
||
# Пароль пользователя food_market в Postgres-контейнере. Подставляется и в
|
||
# POSTGRES_PASSWORD контейнера БД, и в ConnectionStrings__Default API.
|
||
# Сгенерировать: openssl rand -base64 24
|
||
POSTGRES_PASSWORD=CHANGE_ME_strong_db_password
|
||
|
||
# ─── OpenIddict / выдача токенов ─────────────────────────────────────────────
|
||
# Публичный URL админки = issuer токенов (обязателен за nginx-прокси).
|
||
OPENIDDICT_ISSUER=https://admin.food-market.kz/
|
||
# Пароль PFX-сертификатов подписи/шифрования. Пусто = без пароля (self-signed
|
||
# генерируется автоматически в App_Data, если файлов нет). Подробности — docs/openiddict-keys.md.
|
||
OPENIDDICT_CERT_PASSWORD=
|
||
|
||
# ─── Бэкап (systemd food-market-backup.*) ────────────────────────────────────
|
||
# Переопределения для скрипта бэкапа. По умолчанию совпадают с compose — можно не задавать.
|
||
# FM_BACKUP_DIR=/opt/food-market-data/backups
|
||
# FM_UPLOADS_DIR=/opt/food-market-data/uploads
|
||
# FM_BACKUP_RETENTION_DAYS=30
|
||
|
||
# ─── Прочее (опционально, переопределяет appsettings.json) ───────────────────
|
||
# CORS-origins фронта (если отличается от зашитых в appsettings). Индексируется с 0:
|
||
# Cors__AllowedOrigins__0=https://admin.food-market.kz
|
||
# Антибрутфорс на /connect/token и /api/auth/signup (дефолты 5/мин, 20/час):
|
||
# RateLimiting__Enabled=true
|
||
# RateLimiting__PerMinute=5
|
||
# RateLimiting__PerHour=20
|
||
# Интеграция МойСклад (по умолчанию боевой api.moysklad.ru):
|
||
# MoySklad__BaseUrl=https://api.moysklad.ru/api/remap/1.2/
|