مرجع كامل لجميع متغيرات البيئة المستخدمة في إعداد نشر rtCloud المستضاف ذاتياً.
يتم الإعداد بالكامل عبر متغيرات البيئة في ملف .env في جذر دليل النشر. يقرأ Docker Compose هذا الملف تلقائياً — لا حاجة إلى خيار --env-file.
المتغيرات المُعلَّمة بـ مطلوب يجب ضبطها قبل تشغيل الحاويات. بقية المتغيرات لها قيم افتراضية وهي اختيارية.
تُعرِّف هذه المتغيرات هوية نسخة rtCloud الخاصة بك ونقطة وصولها.
| المتغير | الافتراضي | مطلوب | الوصف |
|---|
PROJECT_ID | — | نعم | معرّف فريد لهذا النشر. بدون مسافات أو أحرف خاصة. يُستخدم كبادئة للتسمية الداخلية. |
PROJECT_URL | — | نعم | اسم النطاق أو عنوان IP الذي يصل المستخدمون عبره إلى التطبيق (مثل rtcloud.example.com أو 192.168.1.100). |
PROJECT_TYPE | rtsurvey | لا | نوع المنصة المراد تفعيله. الخيارات: rtwork، rtsurvey، rthome. |
PROJECT_PORT | 80 | لا | المنفذ الذي يستمع عليه التطبيق داخل الحاوية. لا تغيّره إلا إن كنت تعرف ما تفعله. |
HTTP_PROTOCOL | https | لا | البروتوكول المستخدم لبناء عناوين URL الداخلية. اضبطه على http إن لم تكن تستخدم SSL. |
قاعدة البيانات link
بيانات اعتماد اتصال MySQL. تُدار قاعدة البيانات تلقائياً بواسطة حاوية MySQL — تحتاج فقط إلى ضبط كلمات مرور قوية.
| المتغير | الافتراضي | مطلوب | الوصف |
|---|
MYSQL_DATABASE | smartsurvey | لا | اسم قاعدة بيانات التطبيق. |
MYSQL_USER | smartsurvey | لا | مستخدم MySQL للتطبيق. |
MYSQL_PASSWORD | — | نعم | كلمة مرور MYSQL_USER. استخدم قيمة قوية وفريدة. |
MYSQL_ROOT_PASSWORD | — | نعم | كلمة مرور جذر MySQL. مطلوبة لتهيئة قاعدة البيانات وعمليات الإدارة. |
MYSQL_HOST | mysql | لا | اسم مضيف MySQL. استخدم الافتراضي ما لم تتصل بقاعدة بيانات خارجية. |
MYSQL_PORT | 3306 | لا | منفذ MySQL. |
حساب المسؤول link
يُنشأ حساب المسؤول تلقائياً عند التشغيل الأول لقاعدة بيانات جديدة.
| المتغير | الافتراضي | مطلوب | الوصف |
|---|
ADMIN_PASSWORD | admin | نعم | كلمة مرور المستخدم المدمج admin. اضبطها قبل التشغيل الأول. لا تأثير لها إذا كانت قاعدة البيانات موجودة مسبقاً. |
بعد تسجيل الدخول الأول، غيّر كلمة مرور المسؤول من صفحة إعدادات الحساب في واجهة الويب.
تحكم في منافذ المضيف التي يرتبط بها التطبيق.
| المتغير | الافتراضي | الوصف |
|---|
APP_PORT | 8080 | منفذ المضيف لواجهة الويب الرئيسية. غيّره إذا كان المنفذ 8080 مستخدَماً مسبقاً على خادمك. |
SHINY_PORT | 3838 | منفذ المضيف لخادم Shiny التحليلي. |
وقت التشغيل link
| المتغير | الافتراضي | الوصف |
|---|
RUN_ENV | prod | بيئة وقت التشغيل. استخدم prod لنشر الإنتاج، وdev للتطوير المحلي. |
RUN_MODE | admin | دور الحاوية. admin يشغّل الحزمة الكاملة (ويب + طابور + cron). worker يشغّل المعالجة الخلفية فقط (للتوسع الأفقي). |
TZ | Asia/Ho_Chi_Minh | المنطقة الزمنية للخادم. تؤثر على طوابع وقت السجلات وجداول cron وعرض التاريخ. استخدم اسم قاعدة بيانات TZ (مثل UTC، America/New_York، Europe/London). |
LOG_LEVEL | info | مستوى تفصيل سجل التطبيق. الخيارات: debug، info، warning، error. |
COMPOSE_PROJECT_NAME | rtcloud | البادئة المطبَّقة على جميع أسماء حاويات Docker والمجلدات. غيّرها عند تشغيل نسخ متعددة من rtCloud على نفس المضيف. |
RESTART_POLICY | unless-stopped | سلوك إعادة تشغيل حاوية Docker. الخيارات: no، always، on-failure، unless-stopped. |
RTCLOUD_IMAGE | rtawebteam/rta-smartsurvey:survey-dockerize | صورة Docker المستخدمة. غيّر الوسم لتثبيت إصدار محدد. |
REQUIRE_LICENSE | false | تفعيل التحقق من مفتاح الترخيص عند التشغيل. تواصل مع RTA للحصول على معلومات الترخيص. |
| المتغير | الافتراضي | الوصف |
|---|
CSRF_VALIDATION_ENABLED | true | تفعيل التحقق من رمز CSRF. أبقِه true في الإنتاج. اضبطه على false في التطوير المحلي فقط إذا واجهت أخطاء 400 CSRF token could not be verified. |
GII_ENABLED | false | تفعيل أداة إنشاء الكود في إطار Yii. لا تفعّلها أبداً في الإنتاج. |
SSO — Keycloak المدمج link
فعّل حاوية Keycloak المجمَّعة لنظام SSO مؤسسي كامل المزايا. يتطلب نطاقاً مع HTTPS.
| المتغير | الافتراضي | الوصف |
|---|
EMBED_KEYCLOAK | false | اضبطه على 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_USER | admin | اسم مستخدم مسؤول Keycloak. |
KEYCLOAK_ADMIN_PASSWORD | — | كلمة مرور مسؤول Keycloak. |
KEYCLOAK_DB | keycloak | اسم قاعدة بيانات Keycloak. تُنشأ تلقائياً عند التشغيل الأول. |
KEYCLOAK_DB_USER | keycloak | مستخدم قاعدة بيانات Keycloak. |
KEYCLOAK_DB_PASSWORD | — | كلمة مرور قاعدة بيانات مستخدم Keycloak. |
KC_HOSTNAME | — | عنوان URL واجهة Keycloak الأمامية (مثل https://rtcloud.example.com/auth). |
KC_HOSTNAME_STRICT | false | فرض مطابقة صارمة لاسم المضيف. اضبطه على true في الإنتاج مع نطاق ثابت. |
راجع مصادقة SSO للدليل الكامل للإعداد.
SSO — مزود OIDC خارجي link
الاتصال بمزود هوية متوافق مع OIDC موجود (Supabase، Auth0، Authentik، Okta، إلخ).
| المتغير | الافتراضي | الوصف |
|---|
OIDC_ISSUER_URL | — | عنوان URL اكتشاف مُصدِر OIDC (مثل https://accounts.google.com). |
OIDC_CLIENT_ID | — | معرّف العميل المسجَّل في مزود الهوية. |
OIDC_CLIENT_SECRET | — | سر العميل من مزود الهوية. |
OIDC_SCOPE | openid profile email | قائمة نطاقات OIDC مفصولة بمسافات للطلب. |
OIDC_REDIRECT_URI | — | عنوان URL رد اتصال تطبيق الويب (مثل https://rtcloud.example.com/auth/callback). |
OIDC_MOBILE_CLIENT_ID | — | معرّف عميل منفصل لتطبيق rtSurvey المحمول. |
OIDC_MOBILE_REDIRECT_URI | — | عنوان URI رد اتصال التطبيق المحمول (مثل vn.rta.rtsurvey.auth://callback). |
OPEN_REGISTRATION | false | إنشاء حسابات rtCloud تلقائياً للمستخدمين الذين يصادقون عبر OIDC لأول مرة. |
OIDC_AUTHORIZATION_ENDPOINT | — | تجاوز عنوان URL نقطة نهاية التفويض (اتركه فارغاً لاستخدام الاكتشاف). |
OIDC_TOKEN_ENDPOINT | — | تجاوز عنوان URL نقطة نهاية الرمز (اتركه فارغاً لاستخدام الاكتشاف). |
OIDC_USERINFO_ENDPOINT | — | تجاوز عنوان URL نقطة نهاية معلومات المستخدم (اتركه فارغاً لاستخدام الاكتشاف). |
SSO — Azure Active Directory link
| المتغير | الوصف |
|---|
AZURE_CLIENT_ID | معرّف تطبيق Azure AD (العميل). |
AZURE_TENANT_ID | معرّف دليل Azure AD (المستأجر). |
التكاملات الاختيارية link
| المتغير | الافتراضي | الوصف |
|---|
STATA_ENABLED | false | تفعيل تكامل برنامج Stata الإحصائي لتحليل البيانات. |
STATA_BIN_PATH | /usr/bin/stata | المسار المطلق لملف Stata التنفيذي داخل الحاوية. |
Elasticsearch link
| المتغير | الوصف |
|---|
ES_HOST | مضيف Elasticsearch (مثل http://elasticsearch:9200). |
ES_PORT | منفذ Elasticsearch. |
تحليلات Matomo link
| المتغير | الوصف |
|---|
PIWIK_URL | عنوان URL خادم Matomo (Piwik). |
PIWIK_ID | معرّف موقع Matomo. |
PIWIK_SECRET | رمز مصادقة Matomo. |
OpenCPU (الحوسبة بـ R) link
| المتغير | الوصف |
|---|
OCPU_HOST | عنوان URL خادم OpenCPU للحوسبة الإحصائية المبنية على R. |
تكامل RtBox link
| المتغير | الوصف |
|---|
RTBOX_HOST | عنوان URL مضيف خدمة RtBox. |
RTBOX_USER_API | مفتاح API مستخدم RtBox. |
RTBOX_BASIC_AUTH | بيانات اعتماد المصادقة الأساسية لـ RtBox. |
رسائل Matrix link
| المتغير | الوصف |
|---|
MATRIX_HOMESERVER_HOST | مضيف خادم Matrix الرئيسي. |
MATRIX_HOMESERVER_PORT | منفذ خادم Matrix الرئيسي. |
مجلدات البيانات link
تُخزَّن جميع بيانات التطبيق في مجلدات 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/smartsurvey | سكريبتات R لخادم 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