arm-tabular-parser/api/.env.example
2026-10-13 13:38:50 +04:00

55 lines
4.0 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Пример локального окружения. Скопируйте в api/.env: cp .env.example .env
# Порты и учётные данные — стандартные для docs/dev/docker-compose.yml (`make up`: NATS 4222, MinIO 9000).
# Сервис без БД: видит только NATS и S3.
# Контур платформы: обычные переменные окружения там задать нельзя, передаются только секреты OpenBao (OPENBAO__*).
# Любая настройка верхнего уровня ниже (не вложенные OPENBAO__<ГРУППА>__*) может прийти как OPENBAO__APP__<ИМЯ>, например:
# OPENBAO__APP__PARSE_TIMEOUT_SECONDS=300
# OPENBAO__APP__NATS_ENABLED=true
# Приоритет: обычный env -> OPENBAO__APP__* -> .env -> значение по умолчанию. Неизвестное имя — ошибка при старте.
# В .env-файле OPENBAO__APP__* не читается (только процесс окружения).
DEBUG=true
# Dev-запуск слушает только loopback. По умолчанию приложения (без этих строк) — 0.0.0.0:8000, как в контейнере платформы.
SERVER__HOST=127.0.0.1
SERVER__PORT=8000
# MinIO (адрес без схемы — так ждёт miniopy-async). Один бакет для входных файлов и результатов.
OPENBAO__MINIO__MINIO_URL=localhost:9000
OPENBAO__MINIO__MINIO_ADMIN_LOGIN=minioadmin
OPENBAO__MINIO__MINIO_ADMIN_PASSWORD=minioadmin
OPENBAO__MINIO__MINIO_BUCKET=arm-ka
# false — MinIO по http (docker compose); по умолчанию true (https, как на платформе)
OPENBAO__MINIO__MINIO_SECURE=false
# NATS без JetStream; пустые NATS_SEED/NATS_JWT — подключение без nkeys
OPENBAO__NATS__NATS_URL=nats://localhost:4222
OPENBAO__NATS__NATS_SEED=
OPENBAO__NATS__NATS_JWT=
# Subject'ы (необязательно; значения ниже — по умолчанию). Запрос tabular — подписка, результат — публикация.
# Image-запрос слушает scan-gateway; здесь ключ нужен только для единого набора OPENBAO__NATS__*
# OPENBAO__NATS__NATS_TABULAR_REQUEST_SUBJECT=files.tabular_uploaded
# OPENBAO__NATS__NATS_IMAGE_REQUEST_SUBJECT=files.img_uploaded
# OPENBAO__NATS__NATS_RESULT_SUBJECT=files.tabular_parsed
# Необязательные настройки (значения ниже — значения по умолчанию из src/core/config.py)
# Префикс путей приложения за прокси и версия в OpenAPI
ROOT_PATH=/
VERSION=1.0.0
# `service.name` конвертов контракта; допустимо только tabular-parser (иное — ошибка старта). Queue group NATS —
# константа в коде (`tabular-parser`), этой настройкой не меняется
SERVICE_NAME=tabular-parser
# false — не подключаться к NATS (воркер не стартует; /healthcheck отдаёт nats = off)
NATS_ENABLED=true
# Число заданий, обрабатываемых одновременно
WORKER_CONCURRENCY=1
# Повторы публикации ack и результата в NATS после первой попытки (3 — всего до 4 попыток, пауза 2 с; 0 — без повторов)
PUBLISH_RETRIES=3
# Размер process-local LRU обработанных job_id (защита от дублей доставки)
DONE_CACHE_SIZE=1000
# Лимиты разбора: размер файла в байтах (больше — UNSUPPORTED_FORMAT, книга не открывается; 52428800 = 50 МиБ)
# и время разбора одного файла в секундах (больше — TIMEOUT); оба ниже reply_deadline ядра (5 мин)
PARSE_MAX_BYTES=52428800
PARSE_TIMEOUT_SECONDS=120