Skip to content
Эта страница создана и переведена с помощью ИИ. Если вы заметили неточности, помогите нам улучшить её. Редактировать на GitHub

Справочник конфигурации

OpenPR настраивается через переменные окружения. Все сервисы читают из одного файла .env при использовании Docker Compose или отдельных переменных окружения при прямом запуске.

API-сервер

ПеременнаяПо умолчаниюОписание
APP_NAMEapiИдентификатор приложения для логирования
BIND_ADDR0.0.0.0:8080Адрес и порт, на котором слушает API
DATABASE_URLСтрока подключения к PostgreSQL
JWT_SECRETchange-me-in-productionСекретный ключ для подписи JWT-токенов
JWT_ACCESS_TTL_SECONDS2592000 (30 дней)Время жизни токена доступа в секундах
JWT_REFRESH_TTL_SECONDS604800 (7 дней)Время жизни токена обновления в секундах
RUST_LOGinfoУровень логирования (trace, debug, info, warn, error)
UPLOAD_DIR/app/uploadsДиректория для загрузки файлов

Безопасность

Всегда меняйте JWT_SECRET на надёжное случайное значение в продакшене. Используйте минимум 32 символа случайных данных:

bash
openssl rand -hex 32

База данных

ПеременнаяПо умолчаниюОписание
DATABASE_URLПолная строка подключения к PostgreSQL
POSTGRES_DBopenprИмя базы данных
POSTGRES_USERopenprПользователь базы данных
POSTGRES_PASSWORDopenprПароль базы данных

Формат строки подключения:

postgres://user:password@host:port/database

Docker Compose

При использовании Docker Compose сервис базы данных называется postgres, поэтому строка подключения:

postgres://openpr:openpr@postgres:5432/openpr

Воркер

ПеременнаяПо умолчаниюОписание
APP_NAMEworkerИдентификатор приложения
DATABASE_URLСтрока подключения к PostgreSQL
JWT_SECRETДолжен совпадать со значением API-сервера
RUST_LOGinfoУровень логирования

Воркер обрабатывает фоновые задачи из таблиц job_queue и scheduled_jobs.

MCP-сервер

ПеременнаяПо умолчаниюОписание
APP_NAMEmcp-serverИдентификатор приложения
OPENPR_API_URLURL API-сервера (включая прокси при наличии)
OPENPR_BOT_TOKENТокен бота с префиксом opr_
OPENPR_WORKSPACE_IDUUID рабочего пространства по умолчанию
DATABASE_URLСтрока подключения к PostgreSQL
JWT_SECRETДолжен совпадать со значением API-сервера
DEFAULT_AUTHOR_IDUUID автора по умолчанию для операций MCP
RUST_LOGinfoУровень логирования

Опции транспорта MCP

Бинарный файл MCP-сервера принимает аргументы командной строки:

bash
# Режим HTTP (по умолчанию)
mcp-server --transport http --bind-addr 0.0.0.0:8090

# Режим stdio (для Claude Desktop, Codex)
mcp-server --transport stdio

# Форма подкоманды
mcp-server serve --transport http --bind-addr 0.0.0.0:8090

Фронтенд

ПеременнаяПо умолчаниюОписание
VITE_API_URLhttp://localhost:8080URL API-сервера для подключения фронтенда

Обратный прокси

В продакшене с обратным прокси (Caddy/Nginx) VITE_API_URL должен указывать на URL прокси, маршрутизирующий запросы к API-серверу.

Порты Docker Compose

СервисВнутренний портВнешний портНазначение
PostgreSQL54325432База данных
API80808081REST API
WorkerФоновые задачи (без порта)
MCP Server80908090MCP-инструменты
Frontend803000Веб-интерфейс

Пример файла .env

bash
# Database
DATABASE_URL=postgres://openpr:openpr@localhost:5432/openpr
POSTGRES_DB=openpr
POSTGRES_USER=openpr
POSTGRES_PASSWORD=openpr

# JWT (CHANGE IN PRODUCTION)
JWT_SECRET=change-me-in-production
JWT_ACCESS_TTL_SECONDS=2592000
JWT_REFRESH_TTL_SECONDS=604800

# API Server
APP_NAME=api
BIND_ADDR=0.0.0.0:8080
RUST_LOG=info

# Frontend
VITE_API_URL=http://localhost:8080

# MCP Server
MCP_SERVER_PORT=8090

Уровни логирования

OpenPR использует крейт tracing для структурированного логирования. Установите RUST_LOG для управления детализацией:

УровеньОписание
errorТолько ошибки
warnОшибки и предупреждения
infoОбычные рабочие сообщения (по умолчанию)
debugДетальная отладочная информация
traceОчень подробно, включает все внутренние операции

Поддерживается фильтрация по модулям:

bash
RUST_LOG=info,api=debug,mcp_server=trace

Следующие шаги

Released under the Apache-2.0 License.