البدء السريع
تشغيل rtCloud على خادمك الخاص في أقل من 10 دقائق باستخدام Docker Compose.
يرشدك هذا الدليل خلال نشر نسخة rtCloud مستضافة ذاتياً على خادم Linux من الصفر. بنهايته ستكون لديك نسخة rtCloud تعمل ويمكن الوصول إليها عبر المتصفح.
المتطلبات المسبقة
تأكد من استيفاء خادمك للمتطلبات التالية قبل البدء:
الأجهزة
| المورد | الحد الأدنى | الموصى به |
|---|---|---|
| ذاكرة الوصول العشوائي | 2 GB | 4 GB |
| القرص | 10 GB | 40 GB |
| المعالج | 1 vCPU | 2 vCPUs |
البرمجيات
| البرنامج | الإصدار |
|---|---|
| نظام التشغيل | Ubuntu 20.04 LTS أو أحدث (أو أي Linux يدعم Docker) |
| Docker | 20.10 أو أحدث |
| Docker Compose | v2.x (docker compose) أو v1.x (docker-compose) |
تثبيت Docker على Ubuntu:
curl -fsSL https://get.docker.com | sh
التحقق من التثبيت:
docker --version
docker compose version
الخطوة 1 — الحصول على الملفات
استنسخ مستودع النشر على خادمك:
git clone ssh://git@rtgit.rta.vn:2224/rtlab/rtwebteam/rta-smart-survey-docker.git rtcloud
cd rtcloud
الخطوة 2 — إعداد البيئة
انسخ ملف الإعداد النموذجي:
cp .env.production.sample .env
افتح .env في محرر نصوص واملأ القيم المطلوبة:
# معرّف فريد لهذا النشر (بدون مسافات أو أحرف خاصة)
PROJECT_ID=myproject
# النطاق أو عنوان IP الذي سيصل المستخدمون عبره إلى التطبيق
# مثال: rtcloud.example.com أو 192.168.1.100
PROJECT_URL=rtcloud.example.com
# البروتوكول: استخدم "https" إن كان لديك نطاق مع SSL، وإلا "http"
HTTP_PROTOCOL=https
# كلمات مرور قوية وفريدة — غيّر الثلاث قبل البدء
MYSQL_PASSWORD=change_me_strong_password
MYSQL_ROOT_PASSWORD=change_me_root_password
ADMIN_PASSWORD=change_me_admin_password
مهم: يقرأ Docker Compose ملف
.envتلقائياً فقط. لا تنشئ ملفاً باسم.env.production. تُطبَّقADMIN_PASSWORDفقط عند التشغيل الأول لقاعدة بيانات جديدة.
الخطوة 3 — تشغيل الحاويات
شغّل جميع الخدمات في الخلفية:
docker compose -f docker-compose.production.yml up -d
يستغرق التشغيل الأول 3–5 دقائق بينما يقوم Docker بـ:
- سحب صورة تطبيق rtCloud (~1 GB تنزيل)
- تهيئة قاعدة بيانات MySQL
- تحميل المخطط الأساسي
- تشغيل جميع هجرات قاعدة البيانات المعلقة
مراقبة تقدم التشغيل في الوقت الفعلي:
docker compose -f docker-compose.production.yml logs -f rtcloud
انتظر حتى تظهر مخرجات تشير إلى جاهزية التطبيق. يمكنك أيضاً مراقبة حالة صحة الحاوية:
watch docker compose -f docker-compose.production.yml ps
الخطوة 4 — الوصول إلى التطبيق
بمجرد أن تُظهر كلتا الحاويتين Up (healthy)، افتح متصفحك:
http://<PROJECT_URL>:8080
سجّل الدخول باستخدام حساب المسؤول:
| الحقل | القيمة |
|---|---|
| اسم المستخدم | admin |
| كلمة المرور | القيمة التي حددتها لـ ADMIN_PASSWORD في .env |
غيّر كلمة مرور المسؤول فوراً بعد تسجيل دخولك الأول من صفحة إعدادات الحساب.
الخطوة 5 — التحقق من جميع الخدمات
تحقق من تشغيل جميع الحاويات وسلامتها:
docker compose -f docker-compose.production.yml ps
المخرجات المتوقعة:
NAME IMAGE STATUS
rtcloud-app rtawebteam/rta-smartsurvey:... Up (healthy)
rtcloud-mysql mysql:8.0 Up (healthy)
إذا أظهرت حاوية Up (starting) أو Up (unhealthy)، انتظر 30–60 ثانية إضافية وتحقق مجدداً. قد يستغرق MySQL دقيقة كاملة للتهيئة الكاملة عند التشغيل الأول.
مرجع المنافذ
| المنفذ | الخدمة | الوصف |
|---|---|---|
8080 | تطبيق rtCloud | واجهة الويب الرئيسية (قابلة للتهيئة عبر APP_PORT) |
3838 | خادم Shiny | التحليلات والتصورات المبنية على R (قابلة للتهيئة عبر SHINY_PORT) |
MySQL (المنفذ 3306) والخدمات الاختيارية (Keycloak) داخلية فقط ولا تُكشف للمضيف بشكل افتراضي.
الخطوات التالية
نسخة rtCloud تعمل الآن. فكّر في هذه المهام التالية:
- تفعيل HTTPS — أشر نطاقاً إلى خادمك وهيّئ SSL مع Let’s Encrypt. راجع النشر السحابي لإعداد HTTPS الآلي.
- مراجعة جميع الإعدادات — تصفح مرجع الإعداد لضبط نشرك للإنتاج.
- إعداد SSO — ربط مزود هوية للمصادقة المركزية للمستخدمين. راجع مصادقة SSO.
- التخطيط للنسخ الاحتياطية — راجع صفحة الصيانة لإجراءات النسخ الاحتياطي والترقية.