Skip to content

Переменные окружения ​

Полный список переменных окружения: что делает каждая, значение по умолчанию, обязательна ли она и является ли секретом.

Как читать таблицу ​

Столбец «Обязательна» означает, что без переменной приложение либо не запустится, либо будет работать неверно. Столбец «Секрет» помечает значения, которые нельзя показывать и нельзя хранить в открытом виде.

Сеть и адреса ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
PORTПорт, на котором слушает API3000нетнет
HOSTАдрес привязки API0.0.0.0нетнет
PUBLIC_API_URLВнешний адрес платформы. Используется для сборки адресов слоя S3, предпросмотра файлов и внутреннего адреса маскированияСобирается из PUBLIC_HOST и PORTФактически да при работе в контейнерахнет
PUBLIC_HOSTХост для сборки PUBLIC_API_URL, если он не задан. Значения 0.0.0.0 заменяются на 127.0.0.1Значение HOSTнетнет
CORS_ORIGINSСписок разрешённых источниковпустонетнет

PUBLIC_API_URL должен быть доступен серверам MCP

Этот адрес попадает внутрь ключа доступа, который платформа выдаёт серверам MCP. Если сервер MCP работает в отдельном контейнере, адрес 127.0.0.1 для него бесполезен.

CORS_ORIGINS не действует

Переменная читается в настройки, но нигде не применяется. Фактически платформа отражает любой источник запроса. Ограничение источников нужно делать на обратном прокси.

Секреты и сессии ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
SESSION_SECRETГлавный секрет платформы. На нём строится шифрование ключей провайдеров, токенов MCP, секрета ONLYOFFICE и персональных данных, а также подписи ключей доступа к файлам и предпросмотруdev-session-secret-change-meДа в productionДа
SESSION_TTL_DAYSСрок жизни сессии входа в днях14нетнет

Смена SESSION_SECRET

Значение по умолчанию годится только для разработки. При смене секрета все ранее зашифрованные значения станут нечитаемыми: ключи провайдеров, токены MCP, словари замен персональных данных.

База данных ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
DATABASE_URLСтрока подключения к PostgreSQLнетДа, если не заданы POSTGRES_*Да
POSTGRES_HOSTХост базы. Используется, когда DATABASE_URL не заданнетПо условиюнет
POSTGRES_USERПользователь базыpostgresПо условиюнет
POSTGRES_PASSWORDПароль базыpasswordПо условиюДа
POSTGRES_DBИмя базыagent_platformПо условиюнет
POSTGRES_PORTПорт базы5432нетнет

Чтобы собрать подключение из отдельных переменных, нужны все четыре: хост, пользователь, пароль и имя базы.

Первичное наполнение ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
SEED_ADMIN_LOGINЛогин администратора, создаваемого при наполнении базыadminнетнет
SEED_ADMIN_PASSWORDЕго парольadminнетДа

Повторное наполнение сбрасывает пароль

Если учётная запись с таким логином уже есть, наполнение перезапишет ей пароль, роль, состояние и имя.

Файлы и слой S3 ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
SESSION_FILES_DIRКаталог для содержимого файлов чатов. Приводится к абсолютному пути.data/session-filesнетнет
CHAT_S3_BUCKETИмя единственной логической корзиныchat-filesнетнет
CHAT_S3_TOKEN_TTL_SECСрок жизни ключа доступа к файлам чата, в секундах900нетнет
PREVIEW_TOKEN_TTL_SECСрок жизни ключа предпросмотра HTML, в секундах1200нетнет

Runtime ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
RUNTIME_URLАдрес Runtime, по которому его вызывает APIhttp://127.0.0.1:3001нетнет
RUNTIME_HOSTАдрес привязки Runtime127.0.0.1нетнет
RUNTIME_PORTПорт Runtime3001нетнет
RUNTIME_PROCESS_ROLEСлужебная метка. Runtime сам выставляет её рабочим процессамне задананетнет

RUNTIME_PROCESS_ROLE вручную не задают

Если Runtime увидит эту переменную при старте, он завершится с ошибкой. Она предназначена только для внутреннего использования.

Персональные данные ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
PII_MODEL_IDМодель распознавания сущностей для поиска персональных данныхXenova/bert-base-multilingual-cased-ner-hrlнетнет
PII_MODEL_CACHE_DIRКаталог кэша этой моделиСтандартный каталог библиотекинетнет

Инструменты MCP ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
MCP_DISCOVER_TIMEOUT_MSТаймаут подключения и получения списка инструментов при сборке каталога8000нетнет
MCP_CATALOG_TTL_MSСрок жизни кэша каталога инструментов60000нетнет
MCP_TOOL_CALL_TIMEOUT_MSТаймаут вызова инструмента30000нетнет
MCP_GATEWAY_SESSION_TTL_MSСрок жизни неактивной сессии внешнего шлюза MCP1800000нетнет

ONLYOFFICE ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
ONLYOFFICE_URLНачальный адрес Document Serverhttp://127.0.0.1:8000нетнет
ONLYOFFICE_PLATFORM_URLНачальный адрес платформы для Document ServerЗначение PUBLIC_API_URLнетнет
ONLYOFFICE_TOKEN_TTL_SECНачальный срок жизни ключа доступа к файлу, от 60 до 864001200нетнет
ONLYOFFICE_PORTПорт контейнера Document Server в поставке для разработки8000нетнет
ONLYOFFICE_CONFIG_DIRКаталог с конфигурацией Document Server./onlyoffice-configнетнет

Эти переменные только для первого запуска

Значения переменных ONLYOFFICE записываются в настройки платформы один раз, при создании строки настроек. Дальше их меняют в разделе администрирования, а не в переменных окружения.

Внешние агенты ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
EACP_TIMEOUT_MSТаймаут обычного обращения к внешнему агенту15000нетнет
EACP_EXPORT_TIMEOUT_MSОтдельный, больший таймаут на выгрузку данных агента120000нетнет
MANAGED_AGENT_UI_MANIFEST_TTL_SECONDSСрок жизни кэша описания разделов, которые объявляет агент30нетнет
MANAGED_AGENT_UI_EXPORT_MAX_BYTESПредел размера выгрузки раздела агента33554432нетнет
MANAGED_AGENT_UI_EMBED_ENABLEDРазрешить агенту объявлять встроенные страницыfalseнетнет
MANAGED_AGENT_LLM_GATEWAY_URLАдрес OpenAI-совместимого шлюза, который платформа сообщает агентуАдрес платформы плюс /v1нетнет

Токен агента переменной не задаётся

Токен внешнего агента вводится в разделе администрирования и хранится в базе в зашифрованном виде. Переменной окружения для него нет.

Интерфейс ​

ПеременнаяЧто делаетПо умолчаниюОбязательнаСекрет
VITE_API_URLАдрес API для интерфейса. Пустое значение означает тот же доменпустонетнет
VITE_DEV_PROXY_TARGETАдрес, куда проксирует запросы сервер разработкиhttp://127.0.0.1:3000нетнет
VITE_BASE_URLБазовый путь, если интерфейс раздаётся не с корня домена/нетнет

Что настройками окружения не меняется ​

Часть значений заложена в код и переменными не управляется:

ЗначениеСколько
Предел шагов в одном запуске60
Максимальный размер файла1 ГиБ
Таймаут загрузки файла1 час
Интервал проверки очереди2,5 секунды
Стоимость хеширования пароля10
Таймаут готовности рабочего процесса60 секунд
Таймаут подключения к серверу MCP из Runtime15 секунд

Лимиты Рантайма, общие настройки платформы и настройки маскирования персональных данных хранятся в базе данных и меняются через интерфейс, а не переменными окружения.

Документация платформы EVA