التثبيت¶
موصى به
استخدم المثبّت بأمر واحد للحصول على أسرع مسار نحو لوحة تحكم عاملة. يتولى تلقائياً التبعيات، إعداد قاعدة البيانات، HTTPS، وخدمات systemd.
المتطلبات الأساسية¶
| المتطلب | الحد الأدنى | الموصى به |
|---|---|---|
| نظام التشغيل | Ubuntu 20.04 / Debian 11 | Ubuntu 22.04+ / Debian 12 |
| الذاكرة | 1 جيجابايت | 2 جيجابايت أو أكثر |
| القرص | 10 جيجابايت | 20 جيجابايت أو أكثر (TimescaleDB ينمو مع بيانات الحركة) |
| المعالج | 1 vCPU | 2+ vCPU |
| Go (للبناء المحلي فقط) | 1.26 | 1.26 |
| Docker (للتثبيت بالحاويات) | 24.0+ | أحدث إصدار مستقر |
| نطاق | اختياري | موصى به (لـ HTTPS + الاشتراكات) |
التثبيت بأمر واحد¶
سيقوم المثبّت بـ:
- اكتشاف نظام التشغيل والبنية المعمارية
- تثبيت التبعيات (PostgreSQL، Redis، Caddy)
- تنزيل وبناء VortexUI
- تشغيل ترحيلات قاعدة البيانات
- إنشاء حساب مسؤول أعلى (طلب تفاعلي)
- تكوين خدمات systemd
- إعداد HTTPS عبر Caddy (في حال توفير نطاق)
بعد الاكتمال، يمكنك الوصول للوحة التحكم عبر https://your-domain.com أو http://server-ip:8080.
Docker Compose¶
يتضمن deploy/compose.yml: لوحة التحكم، واجهة الويب، PostgreSQL + TimescaleDB، Redis، و Caddy.
البناء المحلي¶
# تثبيت Go 1.26
sudo snap install go --classic
go version # يجب أن يُظهر go1.26.x
# تثبيت التبعيات
sudo apt update && sudo apt install -y postgresql redis-server
# استنساخ وبناء
git clone https://github.com/iPmartNetwork/VortexUI.git
cd VortexUI
go build -o vortexui ./cmd/panel
# تشغيل الترحيلات
./vortexui migrate
# إنشاء المسؤول
./vortexui admin create --username admin --password your-password --sudo
# التشغيل
./vortexui serve
إصدار Go
VortexUI يتطلب Go 1.26 أو أحدث. الإصدارات السابقة ستفشل في الترجمة.
إعداد عميل العقدة¶
يعمل عميل العقدة على الخوادم البعيدة ويتواصل مع لوحة التحكم عبر gRPC + mTLS.
- في واجهة لوحة التحكم، اذهب إلى العقد → إضافة عقدة
- يُنشئ معالج التسجيل أمر تثبيت بسطر واحد
- ادخل عبر SSH إلى خادمك البعيد والصق الأمر
- يسجّل العميل نفسه تلقائياً، يتبادل الشهادات، ويبدأ الإبلاغ
العقدة المحلية (خادم واحد)¶
إذا كنت تحتاج خادماً واحداً فقط، استخدم العقدة المحلية — تعمل نواة البروكسي داخل العملية بجانب لوحة التحكم. لا حاجة لعميل منفصل.
- أثناء التثبيت، اختر "نعم" عند السؤال عن العقدة المحلية
- أو لاحقاً: العقد → إضافة عقدة → محلية
- اختر النواة (Xray أو sing-box)
- تدير لوحة التحكم عملية النواة مباشرة
Tip
العقدة المحلية مثالية لإعدادات الخادم الواحد. لنشرات متعددة الخوادم، استخدم العقد البعيدة مع معالج التسجيل.
متغيرات البيئة¶
| المتغير | الوصف | القيمة الافتراضية |
|---|---|---|
VORTEX_DOMAIN |
نطاق لوحة التحكم (لـ HTTPS) | — |
VORTEX_LISTEN |
عنوان استماع API | :8080 |
VORTEX_DB_URL |
سلسلة اتصال PostgreSQL | postgres://localhost/vortex |
VORTEX_REDIS_URL |
سلسلة اتصال Redis | redis://localhost:6379/0 |
VORTEX_JWT_SECRET |
مفتاح توقيع JWT (≥32 بايت) | — (مطلوب) |
VORTEX_ADMIN_USER |
اسم المسؤول الأولي | — |
VORTEX_ADMIN_PASS |
كلمة مرور المسؤول الأولية | — |
VORTEX_TELEGRAM_TOKEN |
توكن بوت تيليجرام | — |
VORTEX_TELEGRAM_ADMIN |
معرّف محادثة المسؤول للإشعارات | — |
VORTEX_ZARINPAL_MERCHANT |
معرّف تاجر ZarinPal | — |
VORTEX_NOWPAYMENTS_KEY |
مفتاح API لـ NowPayments | — |
VORTEX_NOWPAYMENTS_IPN_SECRET |
سر HMAC لـ NowPayments IPN | — |
VORTEX_BACKUP_CRON |
جدول النسخ الاحتياطي (تعبير cron) | — |
VORTEX_BACKUP_TELEGRAM |
إرسال النسخ الاحتياطية إلى تيليجرام | false |
VORTEX_BACKUP_S3_BUCKET |
حاوية S3 للنسخ الاحتياطي | — |
VORTEX_METRICS_ENABLED |
تفعيل مقاييس Prometheus | false |
VORTEX_METRICS_LISTEN |
عنوان نقطة نهاية المقاييس | :9090 |
VORTEX_SHARE_AUTOLIMIT |
تقييد تلقائي عند كشف مشاركة الحساب | false |
إدارة CLI¶
يوفر ملف vortexui التنفيذي قائمة تفاعلية:
╔══════════════════════════════════════╗
║ VortexUI Management ║
╠══════════════════════════════════════╣
║ 1) Start panel ║
║ 2) Stop panel ║
║ 3) Restart panel ║
║ 4) Status ║
║ 5) Logs (live) ║
║ 6) Update ║
║ 7) Admin management ║
║ 8) Backup ║
║ 9) Doctor (diagnostics) ║
║ 0) Exit ║
╚══════════════════════════════════════╝
الأوامر الرئيسية:
| الأمر | الإجراء |
|---|---|
vortexui update |
سحب أحدث إصدار وإعادة التشغيل |
vortexui admin create |
إنشاء مسؤول جديد |
vortexui admin reset-password |
إعادة تعيين كلمة مرور المسؤول |
vortexui backup |
إنشاء نسخة احتياطية فورية |
vortexui doctor |
تشغيل التشخيصات (قاعدة بيانات، Redis، العقد، المنافذ) |
vortexui migrate |
تشغيل ترحيلات قاعدة البيانات المعلّقة |
التحديث¶
التحقق بعد التثبيت¶
بعد التثبيت، تحقق من أن كل شيء يعمل:
- لوحة التحكم متاحة — افتح
https://your-domain.comفي المتصفح - تسجيل الدخول يعمل — سجّل الدخول ببيانات المسؤول
- قاعدة البيانات متصلة — تحقق من الإعدادات → معلومات النظام
- العقدة متصلة — إذا كنت تستخدم العقدة المحلية، تحقق أنها تظهر "متصلة" في صفحة العقد
- تشغيل التشخيصات —
vortexui doctorيفحص جميع المكونات
نقطة نهاية الصحة
تكشف لوحة التحكم GET /api/health — تُرجع 200 OK مع حالة المكونات.
استخدمها للمراقبة الخارجية (UptimeRobot، Prometheus blackbox، إلخ).