- .env.example: единый источник истины для всех переменных окружения
- .gitignore: добавлено исключение !.env.example (правило .env* не применяется)
- Все ранее внесённые правки аудита (7 классов) уже закоммичены в 68740cd
- Итог: 33 QA-теста, 0 хардкод-секретов, 0 .bak, 0 except:pass
76 lines
5.0 KiB
Plaintext
76 lines
5.0 KiB
Plaintext
# ======================================================================
|
||
# ss-tools — Переменные окружения
|
||
# Скопируйте в .env и заполните значения
|
||
#
|
||
# Полный каталог: см. backend/src/core/auth/config.py,
|
||
# backend/src/core/database.py, backend/src/app.py
|
||
# ======================================================================
|
||
|
||
# --- Аутентификация и безопасность (ОБЯЗАТЕЛЬНО) ---
|
||
AUTH_SECRET_KEY= # JWT-ключ подписи токенов (обязательно, без него сервер не стартует)
|
||
ALLOWED_ORIGINS=* # CORS: список доменов через запятую (по умолчанию *; для прода — явный список)
|
||
|
||
# --- Базы данных ---
|
||
DATABASE_URL= # Основная БД (обязательно для production)
|
||
AUTH_DATABASE_URL= # БД аутентификации (если не задан — fallback на DATABASE_URL)
|
||
TASKS_DATABASE_URL= # БД задач (если не задан — fallback на DATABASE_URL)
|
||
POSTGRES_URL= # Fallback для DATABASE_URL (deprecated; используйте DATABASE_URL)
|
||
|
||
# --- Режим разработки ---
|
||
DEV_MODE=false # true — разрешает dev-fallback для БД и упрощает валидацию секретов
|
||
|
||
# --- ADFS SSO (опционально) ---
|
||
ADFS_CLIENT_ID= # Client ID для ADFS (если не задан — ADFS отключён)
|
||
ADFS_CLIENT_SECRET= # Client Secret для ADFS
|
||
ADFS_METADATA_URL= # URL метаданных ADFS (например, https://adfs.example.com/FederationMetadata/2007-06/FederationMetadata.xml)
|
||
|
||
# --- Администратор (первый запуск) ---
|
||
INITIAL_ADMIN_CREATE=false # true — создать администратора при старте (только для первого запуска)
|
||
INITIAL_ADMIN_USERNAME=admin # Логин администратора
|
||
INITIAL_ADMIN_PASSWORD= # Пароль (обязателен при INITIAL_ADMIN_CREATE=true)
|
||
INITIAL_ADMIN_EMAIL= # Email администратора (опционально)
|
||
|
||
# --- AI / LLM API ключи (опционально) ---
|
||
OPENAI_API_KEY= # OpenAI API key
|
||
ANTHROPIC_API_KEY= # Anthropic API key
|
||
OPENROUTER_SITE_URL= # URL сайта для OpenRouter (если используется)
|
||
OPENROUTER_APP_NAME=ss-tools # Название приложения для OpenRouter (по умолчанию ss-tools)
|
||
APP_BASE_URL= # Базовый URL приложения для LLM-колбэков
|
||
|
||
# --- Шифрование ---
|
||
ENCRYPTION_KEY= # Ключ Fernet-шифрования (генерируется автоматически при первом запуске)
|
||
|
||
# --- Хранилище ---
|
||
STORAGE_ROOT=./storage # Корневая директория для артефактов и файлов
|
||
|
||
# --- Порты ---
|
||
BACKEND_HOST_PORT=8001 # Внешний порт бэкенда на хосте (маппинг контейнера)
|
||
FRONTEND_HOST_PORT=8000 # Внешний порт фронтенда на хосте
|
||
BACKEND_PORT=8000 # Внутренний порт бэкенда в контейнере
|
||
FRONTEND_PORT=5173 # Порт dev-сервера SvelteKit
|
||
FRONTEND_SSL_PORT=443 # SSL-порт для фронтенда (nginx)
|
||
|
||
# --- Сертификаты ---
|
||
CERTS_PATH=./certs # Путь к директории с сертификатами (монтируется в контейнер)
|
||
|
||
# --- PostgreSQL (прямое подключение, без DATABASE_URL) ---
|
||
POSTGRES_HOST=localhost # Хост PostgreSQL
|
||
POSTGRES_PORT=5432 # Порт PostgreSQL
|
||
POSTGRES_DB=ss_tools # Имя БД
|
||
POSTGRES_USER=postgres # Пользователь
|
||
POSTGRES_PASSWORD= # Пароль (обязателен для production)
|
||
|
||
# --- Логирование ---
|
||
TASK_LOG_LEVEL=INFO # Уровень логирования задач (DEBUG/INFO/WARNING/ERROR)
|
||
ENABLE_BELIEF_STATE_LOGGING=true # Включить belief state логирование (true/false)
|
||
|
||
# --- Features (фича-флаги) ---
|
||
FEATURES__DATASET_REVIEW=true # Включить ревью датасетов
|
||
FEATURES__HEALTH_MONITOR=true # Включить мониторинг здоровья
|
||
|
||
# --- WebSocket (фронтенд) ---
|
||
PUBLIC_WS_URL= # URL для WebSocket-соединений из фронтенда (например, ws://localhost:8000)
|
||
|
||
# --- Docker Compose ---
|
||
COMPOSE_PROJECT_NAME=ss-tools # Имя Docker Compose проекта
|