Переменные окружения
Текст может содержать неточности, устаревшие данные или технические ошибки. Пожалуйста, проверяйте критически важную информацию перед использованием.
Compose-файл берёт конфигурацию из соседнего файла .env. Запуская контейнеры
вручную, передайте им те же переменные: в архиве с приложением каждый набор
хранится в своём файле .env.example.
Со значениями из репозитория docker compose up поднимается без изменений. Для
промышленной установки задайте свои значения всем секретам:
OAUTH2_CLIENT_SECRET, DATABASE_PASSWORD, REDIS_PASSWORD,
KEYCLOAK_ADMIN_PASSWORD, KEYCLOAK_DATABASE_PASSWORD, SMTP_PASSWORD и
OPENAI_API_KEY. Сгенерируйте их сами, не кладите файл .env в систему
контроля версий и смените значения до того, как установка станет доступна из
сети.
URL-адреса
По этим адресам браузер переходит сам, поэтому указывайте публичные адреса вашей установки, а не имена контейнеров.
| Переменная | Назначение | По умолчанию |
|---|---|---|
APPLICATION_URL | Публичный URL приложения — такой, какой набирают пользователи | http://localhost:8080 |
API_GATEWAY_URL | Публичный URL API-шлюза; по нему обращаются интерфейс и клиенты API | http://localhost:8080 |
METAMODEL_URL | Базовый URL метамоделей. Адрес метамодели — METAMODEL_URL/scope/project/version/model; по нему модели ссылаются на свою метамодель, поэтому менять его нельзя | http://localhost:8080 |
FRONTEND_PORT | Порт хоста, на котором публикуется интерфейс | 8080 |
ABOUT_URL | Страница с информацией о продукте, ссылка в правом верхнем углу. Оставьте пустым, чтобы скрыть ссылку | пусто |
DOCUMENTATION_URL | Сайт документации, ссылка в правом верхнем углу. Оставьте пустым, чтобы скрыть ссылку | пусто |
APPLICATIONS_URL | Портал приложений, ссылка в правом верхнем углу. Оставьте пустым, чтобы скрыть ссылку | пусто |
LANGUAGES | Языки интерфейса: список кодов через запятую в том порядке, в котором они показываются в меню пользователя | en,fr,ru |
Сессии и CORS
| Переменная | Назначение | По умолчанию |
|---|---|---|
SESSION_TIMEOUT | Время жизни сессии в Redis. Задайте его таким же, как SSO Session Idle в realm Keycloak | 30d |
ALLOWED_ORIGINS | Дополнительные origin, которым разрешено обращаться к API-шлюзу, помимо APPLICATION_URL, ABOUT_URL и APPLICATIONS_URL | пусто |
ALLOWED_ORIGIN_PATTERNS | Дополнительные шаблоны origin, которым разрешено обращаться к API-шлюзу | пусто |
OAuth 2.0
Первые три адреса открывает браузер, поэтому они должны быть публичными. Последние три вызывает сам API-шлюз, и они могут быть внутренними адресами контейнеров.
| Переменная | Назначение | По умолчанию |
|---|---|---|
OAUTH2_ISSUER_URL | Адрес издателя realm | http://localhost:8181/realms/architeezy |
OAUTH2_AUTHORIZATION_URL | Адрес авторизации, на который браузер перенаправляется при входе | <issuer>/protocol/openid-connect/auth |
OAUTH2_ACCOUNT_URL | Страница учётной записи, открывается из меню пользователя | <issuer>/account/ |
OAUTH2_CLIENT_ID | Конфиденциальный клиент, под которым входит приложение | architeezy |
OAUTH2_CLIENT_SECRET | Секрет этого клиента. Должен совпадать с секретом в Keycloak | задайте своё значение |
OAUTH2_API_CLIENT_ID | Публичный клиент для внешних клиентов API | architeezy-api |
OAUTH2_TOKEN_URL | Адрес выдачи токенов, вызывается самим приложением | http://keycloak:8080/realms/architeezy/protocol/openid-connect/token |
OAUTH2_JWK_SET_URL | Набор ключей, по которому шлюз и бэкенд проверяют токены | http://keycloak:8080/realms/architeezy/protocol/openid-connect/certs |
OAUTH2_USER_INFO_URL | Адрес сведений о пользователе, вызывается самим приложением | http://keycloak:8080/realms/architeezy/protocol/openid-connect/userinfo |
База данных
Контейнер db при первом запуске создаёт базу данных приложения с
DATABASE_USERNAME и DATABASE_PASSWORD. С этой же парой к ней подключается
бэкенд.
| Переменная | Назначение | По умолчанию |
|---|---|---|
DATABASE_USERNAME | Владелец базы данных architeezy | architeezy |
DATABASE_PASSWORD | Пароль этого пользователя | задайте своё значение |
DATABASE_PORT | Порт хоста, на котором публикуется PostgreSQL | 5441 |
Redis
| Переменная | Назначение | По умолчанию |
|---|---|---|
REDIS_PASSWORD | Пароль, который требует Redis и предъявляет API-шлюз | задайте своё значение |
REDIS_PORT | Порт хоста, на котором публикуется Redis | 6382 |
SMTP
Почта необязательна: оставьте всю группу пустой — приложение будет работать без отправки писем.
| Переменная | Назначение | По умолчанию |
|---|---|---|
SMTP_HOST | Хост почтового сервера | пусто |
SMTP_PORT | Порт почтового сервера | пусто |
SMTP_PROTOCOL | Почтовый протокол, например smtp | пусто |
SMTP_USERNAME | Учётная запись для аутентификации | пусто |
SMTP_PASSWORD | Пароль этой учётной записи | задайте своё значение |
SMTP_SSL_ENABLED | Подключаться ли по SSL | пусто |
SMTP_STARTTLS_ENABLED | Переводить ли соединение в защищённый режим по STARTTLS | пусто |
SMTP_MAIL_FROM | Адрес отправителя исходящей почты | пусто |
SMTP_MAIL_TO | Адрес, на который пишет приложение | пусто |
LLM
ИИ-ассистент работает с любым сервисом, поддерживающим протокол OpenAI. По умолчанию он обращается к модели, развёрнутой на хост-машине.
| Переменная | Назначение | По умолчанию |
|---|---|---|
OPENAI_URL | Базовый URL API, совместимого с OpenAI | http://host.docker.internal:11434/v1 |
OPENAI_API_KEY | Ключ API, передаваемый с каждым запросом | задайте своё значение |
OPENAI_MODEL | Название модели | qwen3:4b |
OPENAI_TEMPERATURE | Температура сэмплирования | 0 |
Keycloak
| Переменная | Назначение | По умолчанию |
|---|---|---|
KEYCLOAK_URL | Публичный URL Keycloak; он же задаёт его имя хоста | http://localhost:8181 |
KEYCLOAK_PORT | Порт хоста, на котором публикуется Keycloak | 8181 |
KEYCLOAK_ADMIN_USERNAME | Первоначальный администратор realm master | admin |
KEYCLOAK_ADMIN_PASSWORD | Пароль этого администратора | задайте своё значение |
KEYCLOAK_DATABASE_USERNAME | Владелец базы данных keycloak | keycloak |
KEYCLOAK_DATABASE_PASSWORD | Пароль этого пользователя | задайте своё значение |
KEYCLOAK_DATABASE_PORT | Порт хоста, на котором публикуется база данных Keycloak | 5444 |
Ещё два значения складываются из переменных выше и уходят в Keycloak при импорте
realm: URI перенаправления API_GATEWAY_URL/login/oauth2/code/keycloak и
веб-origin APPLICATION_URL. Измените любой из этих URL — соответствующую
настройку клиента придётся поправить в Keycloak.