Уся конфігурація виконується через змінні середовища у файлі .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ТакКореневий пароль 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-dockerizeDocker-образ для використання. Змініть тег для закріплення конкретної версії.
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Назва 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_HOSTNAMEFrontend URL Keycloak (наприклад, https://rtcloud.example.com/auth).
KC_HOSTNAME_STRICTfalseПримусова сувора відповідність імені хосту. Встановіть true у виробництві з фіксованим доменом.

Дивіться SSO-аутентифікація для повного посібника з налаштування.


SSO — Зовнішній постачальник OIDC

Підключення до наявного постачальника ідентифікаційних даних, сумісного з OIDC (Supabase, Auth0, Authentik, Okta тощо).

ЗміннаЗа замовчуваннямОпис
OIDC_ISSUER_URLURL виявлення OIDC issuer (наприклад, 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

ЗміннаОпис
PIWIK_URLURL сервера Matomo (Piwik).
PIWIK_IDІдентифікатор сайту Matomo.
PIWIK_SECRETТокен аутентифікації Matomo.

OpenCPU (обчислення R)

ЗміннаОпис
OCPU_HOSTURL сервера OpenCPU для статистичних обчислень на основі R.

Інтеграція RtBox

ЗміннаОпис
RTBOX_HOSTURL хосту сервісу RtBox.
RTBOX_USER_APIAPI-ключ користувача RtBox.
RTBOX_BASIC_AUTHОблікові дані базової автентифікації для RtBox.

Обмін повідомленнями Matrix

ЗміннаОпис
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
  
Чи була ця сторінка корисною?