Вся конфигурация выполняется через переменные окружения в файле .env в корне каталога развёртывания. Docker Compose читает этот файл автоматически — флаг --env-file не требуется.

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


Проект

Эти переменные определяют идентификатор и точку доступа вашего экземпляра rtCloud.

ПеременнаяПо умолчаниюОбязательнаяОписание
PROJECT_IDДаУникальный идентификатор этого развёртывания. Без пробелов и специальных символов. Используется как префикс для внутренних названий.
PROJECT_URLДаДоменное имя или IP-адрес, по которому пользователи обращаются к приложению (например, rtcloud.example.com или 192.168.1.100).
PROJECT_TYPErtsurveyНетВариант платформы для активации. Варианты: rtwork, rtsurvey, rthome.
PROJECT_PORT80НетПорт, на котором приложение слушает внутри контейнера. Не изменяйте, если не знаете, что делаете.
HTTP_PROTOCOLhttpsНетПротокол для построения внутренних URL. Установите http, если не используете SSL.

База данных

Учётные данные для подключения к MySQL. База данных управляется автоматически контейнером MySQL — вам нужно только установить надёжные пароли.

ПеременнаяПо умолчаниюОбязательнаяОписание
MYSQL_DATABASEsmartsurveyНетИмя базы данных приложения.
MYSQL_USERsmartsurveyНетПользователь MySQL для приложения.
MYSQL_PASSWORDДаПароль для MYSQL_USER. Используйте надёжное уникальное значение.
MYSQL_ROOT_PASSWORDДаПароль root MySQL. Необходим для инициализации базы данных и административных операций.
MYSQL_HOSTmysqlНетИмя хоста MySQL. Используйте значение по умолчанию, если не подключаетесь к внешней базе данных.
MYSQL_PORT3306НетПорт MySQL.

Учётная запись администратора

Учётная запись администратора создаётся автоматически при первом запуске с чистой базой данных.

ПеременнаяПо умолчаниюОбязательнаяОписание
ADMIN_PASSWORDadminДаПароль для встроенного пользователя admin. Установите до первого запуска. Не действует, если база данных уже существует.

После первого входа смените пароль администратора на странице Настройки учётной записи в веб-интерфейсе.


Порты

Управляют тем, к каким портам хоста привязывается приложение.

ПеременнаяПо умолчаниюОписание
APP_PORT8080Порт хоста для основного веб-интерфейса. Измените, если порт 8080 уже используется на вашем сервере.
SHINY_PORT3838Порт хоста для аналитического сервера Shiny.

Среда выполнения

ПеременнаяПо умолчаниюОписание
RUN_ENVprodСреда выполнения. Используйте prod для производственных развёртываний, dev для локальной разработки.
RUN_MODEadminРоль контейнера. admin запускает полный стек (веб + очередь + cron). worker запускает только фоновую обработку (для горизонтального масштабирования).
TZAsia/Ho_Chi_MinhЧасовой пояс сервера. Влияет на временные метки журналов, расписания cron и отображение дат. Используйте имя часового пояса TZ (например, UTC, America/New_York, Europe/London).
LOG_LEVELinfoДетализация журналов приложения. Варианты: debug, info, warning, error.
COMPOSE_PROJECT_NAMErtcloudПрефикс для имён всех Docker-контейнеров и томов. Измените при запуске нескольких экземпляров rtCloud на одном хосте.
RESTART_POLICYunless-stoppedПолитика перезапуска Docker-контейнеров. Варианты: no, always, on-failure, unless-stopped.
RTCLOUD_IMAGErtawebteam/rta-smartsurvey:survey-dockerizeИспользуемый образ Docker. Измените тег для фиксации конкретной версии.
REQUIRE_LICENSEfalseВключить проверку лицензионного ключа при запуске. Свяжитесь с RTA для получения информации о лицензии.

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

ПеременнаяПо умолчаниюОписание
CSRF_VALIDATION_ENABLEDtrueВключить проверку CSRF-токена. Оставьте true в производственной среде. Установите false только в локальной разработке при ошибках 400 CSRF token could not be verified.
GII_ENABLEDfalseВключить инструмент генерации кода фреймворка Yii. Никогда не включайте в производственной среде.

SSO — Встроенный Keycloak

Включите встроенный контейнер Keycloak для полнофункционального корпоративного SSO. Требует домена с HTTPS.

ПеременнаяПо умолчаниюОписание
EMBED_KEYCLOAKfalseУстановите true для запуска встроенного контейнера Keycloak. Активирует профиль Docker Compose embed-keycloak.
KEYCLOAK_URLПолный URL сервера Keycloak (например, https://rtcloud.example.com/auth).
KEYCLOAK_REALMИмя области Keycloak (например, rtsurvey).
KEYCLOAK_CLIENT_IDИдентификатор клиента Keycloak для приложения rtCloud.
KEYCLOAK_CLIENT_SECRETСекрет клиента Keycloak. Генерируется в консоли администратора Keycloak.
KEYCLOAK_ADMIN_USERadminИмя пользователя администратора Keycloak.
KEYCLOAK_ADMIN_PASSWORDПароль администратора Keycloak.
KEYCLOAK_DBkeycloakИмя базы данных для Keycloak. Создаётся автоматически при первом запуске.
KEYCLOAK_DB_USERkeycloakПользователь базы данных для Keycloak.
KEYCLOAK_DB_PASSWORDПароль базы данных для пользователя Keycloak.
KC_HOSTNAMEВнешний URL Keycloak (например, https://rtcloud.example.com/auth).
KC_HOSTNAME_STRICTfalseПринудительное соответствие имени хоста. Установите true в производственной среде с фиксированным доменом.

Полное руководство по настройке см. в разделе SSO-аутентификация.


SSO — Внешний провайдер OIDC

Подключение к существующему OIDC-совместимому поставщику идентификации (Supabase, Auth0, Authentik, Okta и т.д.).

ПеременнаяПо умолчаниюОписание
OIDC_ISSUER_URLURL обнаружения издателя OIDC (например, https://accounts.google.com).
OIDC_CLIENT_IDИдентификатор клиента, зарегистрированный у поставщика идентификации.
OIDC_CLIENT_SECRETСекрет клиента от поставщика идентификации.
OIDC_SCOPEopenid profile emailРазделённый пробелами список областей OIDC для запроса.
OIDC_REDIRECT_URIURL обратного вызова для веб-приложения (например, https://rtcloud.example.com/auth/callback).
OIDC_MOBILE_CLIENT_IDОтдельный идентификатор клиента для мобильного приложения rtSurvey.
OIDC_MOBILE_REDIRECT_URIURI обратного вызова мобильного приложения (например, vn.rta.rtsurvey.auth://callback).
OPEN_REGISTRATIONfalseАвтоматически создавать учётные записи rtCloud для пользователей, впервые аутентифицированных через OIDC.
OIDC_AUTHORIZATION_ENDPOINTПереопределить URL конечной точки авторизации (оставьте пустым для использования обнаружения).
OIDC_TOKEN_ENDPOINTПереопределить URL конечной точки токена (оставьте пустым для использования обнаружения).
OIDC_USERINFO_ENDPOINTПереопределить URL конечной точки информации о пользователе (оставьте пустым для использования обнаружения).

SSO — Azure Active Directory

ПеременнаяОписание
AZURE_CLIENT_IDИдентификатор приложения (клиента) Azure AD.
AZURE_TENANT_IDИдентификатор каталога (арендатора) Azure AD.

Дополнительные интеграции

Stata

ПеременнаяПо умолчаниюОписание
STATA_ENABLEDfalseВключить интеграцию со статистическим программным обеспечением Stata для анализа данных.
STATA_BIN_PATH/usr/bin/stataАбсолютный путь к бинарному файлу Stata внутри контейнера.

Elasticsearch

ПеременнаяОписание
ES_HOSTХост Elasticsearch (например, http://elasticsearch:9200).
ES_PORTПорт Elasticsearch.

Matomo Analytics

ПеременнаяОписание
PIWIK_URLURL сервера Matomo (Piwik).
PIWIK_IDИдентификатор сайта Matomo.
PIWIK_SECRETТокен аутентификации Matomo.

OpenCPU (вычисления R)

ПеременнаяОписание
OCPU_HOSTURL сервера OpenCPU для статистических вычислений на R.

Интеграция RtBox

ПеременнаяОписание
RTBOX_HOSTURL хоста сервиса RtBox.
RTBOX_USER_APIКлюч API пользователя RtBox.
RTBOX_BASIC_AUTHУчётные данные базовой аутентификации для RtBox.

Matrix Messaging

ПеременнаяОписание
MATRIX_HOMESERVER_HOSTХост домашнего сервера Matrix.
MATRIX_HOMESERVER_PORTПорт домашнего сервера Matrix.

Тома данных

Все данные приложения хранятся в именованных томах Docker. Тома создаются автоматически при первом запуске и сохраняются при перезапуске и обновлении контейнеров.

ТомТочка монтированияСодержимое
rtcloud_mysql_data/var/lib/mysqlФайлы базы данных MySQL
rtcloud_uploads…/uploadsФайлы, загруженные участниками опроса
rtcloud_audios…/audiosАудиозаписи
rtcloud_downloads…/downloadsСгенерированные файлы экспорта
rtcloud_gallery…/galleryИзображения галереи
rtcloud_voicemail…/voicemailГолосовые сообщения
rtcloud_analytics…/analyticsАналитические данные
rtcloud_aggregate…/aggregateАгрегированные результаты опроса
rtcloud_converter…/converterРезультаты преобразования данных
rtcloud_shiny_data/srv/shiny-server/smartsurveyR-скрипты сервера Shiny
rtcloud_shiny_logs/var/log/shiny-serverЖурналы сервера Shiny
rtcloud_assets…/assetsВеб-ресурсы (CSS, JS)
rtcloud_runtime…/protected/runtimeКэш среды выполнения приложения
rtcloud_cache…/cacheКэш приложения
rtcloud_tmp…/tmpВременные файлы

Имена томов имеют префикс из значения COMPOSE_PROJECT_NAME (по умолчанию: rtcloud).

Список всех томов для вашего развёртывания:

  docker volume ls | grep rtcloud
  
Была ли эта страница полезной?