اكسبروتكس0X (Akamai Cloud)
انشر rtCloud على Linode باستخدام StackScript. ليست هناك حاجة إلى تكوين — ما عليك سوى إنشاء الخادم واتباع خطوات ما بعد النشر.
الخطوة 1 — قم بتشغيل StackScript
يؤدي هذا إلى فتح صفحة StackScript في Linode Cloud Manager. انقر نشر Linode الجديد.
الخطوة الثانية — املأ نموذج Linode
املأ نموذج إنشاء الخادم القياسي الخاص بـ Linode:
| المجال | القيمة الموصى بها |
|---|---|
| صورة | Ubuntu 22.04 LTS |
| المنطقة | الأقرب لمستخدميك |
| الخطة | وحدة المعالجة المركزية المشتركة 4 جيجابايت أو أكبر |
| كلمة مرور الجذر | تعيين كلمة مرور قوية |
| جدار الحماية | لا يوجد جدار حماية (مستحسن) |
| المنطقة الزمنية (مجالنا الوحيد) | المنطقة الزمنية لخادمك (الافتراضي: Asia/Ho_Chi_Minh) |
** لماذا لا يوجد جدار حماية؟ ** يحتاج البرنامج النصي للإعداد إلى الوصول إلى الإنترنت الصادر (Docker يسحب، Let’s Encrypt). يمكن أن يؤدي حظر المنافذ أثناء التمهيد الأول إلى فشل النشر. يمكنك إرفاق جدار حماية بعد اكتمال الإعداد — راجع قواعد جدار الحماية أدناه للحصول على القواعد الصحيحة.
انقر فوق إنشاء Linode عند الانتهاء.
الخطوة 3 - انتظر حتى يكتمل الإعداد
يعمل البرنامج النصي تلقائيًا عند التمهيد الأول. يقوم بتثبيت Docker، ويسحب صورة rtSurvey، ويهيئ قاعدة البيانات، ويبدأ جميع الخدمات. يستغرق هذا 5-10 دقائق.
يمكنك مشاهدة التقدم مباشرة في Linode Cloud Manager — لا يتطلب SSH:
- Go to your Linode dashboard
- انقر فوق Linode الذي تم إنشاؤه حديثًا
- انقر فوق تشغيل وحدة تحكم LISH (أعلى يمين صفحة تفاصيل Linode)
يتم فتح محطة المتصفح لإظهار سجل التمهيد المباشر — تعمل علامة التبويب Weblish مباشرة في متصفحك، دون الحاجة إلى عميل SSH.
انتظر حتى ترى:
============================================================
rtSurvey deployment complete!
============================================================
Server IP : <your-server-ip>
App URL : http://<your-server-ip> (HTTP only until domain is set)
Admin : admin / admin
============================================================
يعرض السجل أيضًا عنوان IP الخاص بخادمك، والذي ستحتاج إليه في الخطوة التالية.
الخطوة الرابعة — إعداد SSL
Open your browser at http://<server-ip>. The app will redirect you to the SSL setup screen.
اتبع دليل إعداد SSL → لتكوين HTTPS. يعد النطاق الفرعي rtsurvey.com المجاني هو الخيار الأسرع — دون الحاجة إلى إعداد DNS.
الخطوة 5 – تسجيل الدخول لأول مرة
بمجرد تنشيط SSL، اتبع [دليل تسجيل الدخول الأول →](../تسجيل الدخول الأول) للوصول إلى حساب المسؤول.
الخطوة 6 — تغيير كلمة المرور الافتراضية
جميع كلمات المرور الافتراضية هي “admin”. قم بتغييرها مباشرة بعد تسجيل الدخول الأول:
- كلمة مرور مسؤول التطبيق — إعدادات الحساب داخل التطبيق
- Keycloak admin — accessible at
https://your-domain.com/auth/admin(login:admin/admin)
قواعد جدار الحماية (Linode Cloud Firewall)
إذا قمت بإرفاق جدار الحماية السحابي Linode بهذا الخادم، فاستخدم القواعد التالية:
الوارد
| التسمية | العمل | البروتوكول | ميناء | المصادر | ملاحظات |
|——-|——–|———|———|——-|
| قبول-الداخل-ssh | قبول | برنامج التعاون الفني | 22 | كل IPv4، كل IPv6 | وصول SSH |
| قبول-الوارد-http | قبول | برنامج التعاون الفني | 80 | كل IPv4، كل IPv6 | Nginx (تحدي HTTP + ACME) |
| قبول-الوارد-https | قبول | برنامج التعاون الفني | 443 | كل IPv4، كل IPv6 | Nginx (HTTPS بعد إعداد SSL) |
| قبول-وارد-لامع | قبول | برنامج التعاون الفني | 3838 | كل IPv4، كل IPv6 | الخادم اللامع (تحليلات R) |
| قبول-الوارد-icmp | قبول | آي سي إم بي | — | كل IPv4، كل IPv6 | بينغ / التشخيص |
| السياسة الواردة الافتراضية | قطرة | | | | منع كل شيء آخر |
###الصادرة
| التسمية | العمل | ملاحظات |
|---|---|---|
| السياسة الصادرة الافتراضية | قبول | السماح بجميع العمليات الصادرة (عمليات سحب Docker، وcertbot، وGoDaddy API، وما إلى ذلك) |
المنافذ غير مطلوبة خارجيًا
ترتبط هذه المنافذ بـ 127.0.0.1 فقط ولا يمكن الوصول إليها مطلقًا من خارج الخادم:
| ميناء | الخدمة | السبب |
|---|---|---|
| 8080 | حاوية التطبيق | Nginx وكلاء لها داخليا |
| 8090 | حاوية Keycloak | Nginx وكلاء لها داخليا |
| 3306 | ماي إس كيو إل | شبكة Docker داخلية فقط |
استكشاف الأخطاء وإصلاحها
تحقق من سجل الإعداد
tail -200 /var/log/stackscript.log
تحقق من سجل SSL
tail -200 /var/log/rtsurvey-ssl.log
عرض حالة الحاوية
docker compose -f /opt/rtsurvey/docker-compose.production.yml ps