دليل عملي

‎OpenProject على ‎VPS: مخطط ‎Gantt والمعالم وتتبع الوقت

النشر7 دقائق للقراءةعدد الخطوات: 13

بدأ ‎Jira Data Center في فرض الهجرة إلى السحابة منذ عام 2024، مع مراجعة أسعار التسعير كل ربع سنة. بالنسبة للوكالات التي تفوتر بالساعة وتنسق فرق متعددة، لم يعد الدفع لكل مقعد أمرًا مستدامًا. يستجيب ‎OpenProject لهذه الحاجة تحديدًا: إنه أداة إدارة مشاريع مؤسسية — مخطط ‎Gantt أصلي وجداول الأوقات والمعالم التعاقدية و‎Wiki — موزَّعة تحت رخصة ‎GPLv3، مما يجعلها قابلة للاستضافة الذاتية دون تكاليف ترخيص. يشرح هذا الدليل كيفية نشره على ‎VPS باستخدام صورة ‎Docker الرسمية، ووضعه خلف ‎nginx مع ‎TLS، والبدء بالمشروع الأول.

المحتويات· ‎OpenProject وPlane وKaneo: ثلاث أدوات وثلاثة توجهات1/4
  1. 01‎OpenProject وPlane وKaneo: ثلاث أدوات وثلاثة توجهات
  2. 02Comparatif
  3. 03إنشاء المشروع الأول وضبط مخطط ‎Gantt
  4. 04استكشاف الأخطاء — المشكلات الشائعة

لماذا تبحث الوكالات عن بديل لـ ‎Jira في 2026. أفضت الهجرة إلى ‎Jira Cloud إلى زيادات سعرية متعاقبة: الإعلان عن نهاية دعم ‎Data Center، وإنهاء التراخيص الدائمة لـ ‎Server، ومراجعة أسعار ‎Cloud في 2024 ثم في 2026. بالنسبة لوكالة من عشرة أشخاص، يتجاوز التكلفة السنوية لأداة ‎PM سحابية — ‎Jira أو ‎Asana أو ‎Monday — عادةً 3000 يورو. يُخفّض ‎OpenProject Community edition المستضاف ذاتيًا على ‎VPS هذا البند إلى الصفر خارج تكاليف البنية التحتية.

  • مخطط ‎Gantt تفاعلي مع تبعيات المهام والمسار الحرج
  • تتبع الوقت لكل مهمة ولكل مشروع، قابل للتصدير بصيغة ‎CSV للفوترة
  • معالم وتسليمات تعاقدية مرفقة بخارطة الطريق
  • ‎Wiki مدمجة لتوثيق المشروع دون أداة خارجية
  • إدارة الإصدارات والنشرات للمشاريع البرمجية
  • التحكم في الوصول الدقيق المستند إلى الأدوار (قارئ، مساهم، مدير مشروع، مسؤول)
  • رخصة ‎GPLv3: الكود المصدري قابل للتدقيق ولا توجد قياسات بعيدة مفروضة

المتطلبات الأساسية: 2 غيغابايت من الذاكرة كحد أدنى. يعمل ‎OpenProject على ‎Ruby on Rails في الخادم، مما يفسر بصمته الأعلى في الذاكرة مقارنة بأدوات مثل ‎Plane أو ‎Vikunja. من الناحية العملية، يكفي 2 غيغابايت من الذاكرة لفريق من خمسة إلى خمسة عشر شخصًا مع بضعة مشاريع نشطة. يُغطي ‎VPS بمعالجَين افتراضيَّين وذاكرة 2 غيغابايت الحمل. لعشرين شخصًا أو أكثر، يُنصح بالانتقال إلى 4 غيغابايت لتجنب البطء عند تحميل مخططات ‎Gantt المعقدة. يجب أن يوفر القرص 20 غيغابايت على الأقل لـ ‎PostgreSQL والمرفقات والسجلات.

‎OpenProject وPlane وKaneo: ثلاث أدوات وثلاثة توجهات

‎ثلاثة أدوات إدارة مشاريع مفتوحة المصدر، ثلاثة مناهج مختلفة. المقارنة أدناه تساعد على الاختيار وفق احتياجات الفريق.

Comparatif

مرّر الجدول أفقيًا

CritèreOpenprojectPlaneKaneo
النموذج الأساسي‎PM مؤسسي: Gantt، معالم، جداول أوقات، ميزانيات‎PM رشيق: دورات، إضافة مهام، سباقات، حالات مخصصة‎Kanban مرئي: بطاقات وأعمدة وتسميات
‎Gantt أصلينعم، مع تبعيات ومسار حرجلا (خارطة طريق جزئية، بدون تبعيات)لا
تتبع الوقتنعم، لكل مهمة ولكل مشروعلا في إصدار المجتمعلا
الفئة المستهدفةوكالات وفرق ذات معالم تعاقدية ومشاريع متعددة السنواتفرق المنتج الرشيقة والشركات الناشئة الصغيرةالفرق التي تريد ‎Kanban بسيطًا
الذاكرة الدنيا2 غيغابايت1 غيغابايت512 ميغابايت
الرخصة‎GPLv3‎AGPL v3‎MIT
  1. تجهيز الـ ‎VPS

    اتصل عبر ‎SSH، وحدِّث الحزم وثبِّت ‎Docker مع إضافة ‎Compose: apt update && apt install -y docker.io docker-compose-plugin. تحقق من التثبيت بـ docker compose version (يُتوقع الإصدار ‎v2.x).

  2. تنزيل ملف ‎Compose الرسمي

    استنسخ مستودع النشر الرسمي: git clone https://github.com/opf/openproject-deploy.git /opt/openproject && cd /opt/openproject/compose. يحتفظ هذا المستودع بملف docker-compose.yml وملف .env الموصى به من فريق ‎OpenProject.

  3. ضبط متغيرات البيئة

    انسخ المثال: cp .env.example .env ثم عدِّل .env. المتغيرات الإلزامية: OPENPROJECT_HOST__NAME=your-domain.com (شرطة سفلية مزدوجة)، وOPENPROJECT_HTTPS=true، وSECRET_KEY_BASE المولَّد بـ openssl rand -hex 64. عيِّن أيضًا POSTGRES_PASSWORD وOPENPROJECT_DB_PASSWORD بنفس القيمة القوية.

  4. تشغيل الحاويات

    شغِّل docker compose up -d. تُنزَّل صورة openproject/community:latest بحجم يبلغ نحو 600 ميغابايت. يستغرق الإقلاع الأول دقيقتين إلى أربع دقائق لتنفيذ هجرات قاعدة البيانات. راقب بـ docker compose logs -f web حتى ترى السطر Listening on tcp://0.0.0.0:8080.

  5. التحقق من استجابة التطبيق

    من الـ ‎VPS: curl -s -o /dev/null -w "%{http_code}" http://localhost:8080. يُؤكد رمز 200 أو 302 أن التطبيق يعمل. في هذه المرحلة يمكن الوصول إليه محليًا فقط — يلي ذلك إعداد ‎nginx في الخطوة التالية.

  1. تثبيت ‎nginx و‎certbot

    على ‎Debian/Ubuntu: apt install -y nginx certbot python3-certbot-nginx. تأكد من أن ‎DNS للنطاق يشير إلى عنوان ‎IP للـ ‎VPS قبل المتابعة.

  2. إنشاء ملف ‎vhost لـ ‎nginx

    أنشئ /etc/nginx/sites-available/openproject بالمحتوى التالي: server { listen 80; server_name your-domain.com; location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Proto https; proxy_read_timeout 120s; client_max_body_size 100M; } }. فعِّل الموقع: ln -s /etc/nginx/sites-available/openproject /etc/nginx/sites-enabled/ && nginx -t && systemctl reload nginx.

  3. الحصول على شهادة ‎TLS

    نفِّذ certbot --nginx -d your-domain.com. يُعدِّل ‎Certbot ملف ‎vhost للاستماع على المنفذ 443، ويضيف توجيهات ssl_certificate ويُهيئ تحويل ‎HTTP إلى ‎HTTPS تلقائيًا. تتجدد الشهادة عبر مؤقت ‎systemd الخاص بـ certbot.timer.

إنشاء المشروع الأول وضبط مخطط ‎Gantt

‎بعد نشر ‎OpenProject والوصول إليه، تقود هذه الخطوات إنشاء أول مشروع وتفعيل عرض ‎Gantt.

  1. الوصول إلى الواجهة وتغيير كلمة مرور المسؤول

    افتح https://your-domain.com في المتصفح. سجِّل الدخول بـ admin / admin وغيِّر كلمة المرور فورًا. ثم اضبط عنوان ‎URL للتطبيق في الإدارة > الإعدادات > عام إذا لم يُكتشف تلقائيًا من OPENPROJECT_HOST__NAME.

  2. إنشاء مشروع ودعوة الأعضاء

    انقر على مشروع جديد، اختر اسمًا، فعِّل الوحدات المفيدة: المهام، ‎Gantt، تتبع الوقت، ‎Wiki. ادعُ الأعضاء من تبويب الإعدادات > الأعضاء بتعيين دور لكل منهم.

  3. إنشاء المهام وتحديد التبعيات

    في عرض قائمة المهام، أنشئ المهام الأولى بتواريخ البداية والنهاية. انتقل إلى عرض ‎Gantt لتصور الجدول الزمني. لإنشاء تبعية، افتح مهمة وأدخل رقم المهمة السابقة في حقل «يسبقها».

  4. ضبط المعالم

    المعلم هو مهمة من نوع ‎Milestone. أنشئ معلمًا من عرض ‎Gantt أو من القائمة بتغيير النوع. تظهر المعالم كمعيَّنات على المخطط — مفيدة لتمييز التسليمات التعاقدية.

  5. تفعيل جداول الأوقات

    في الإدارة > الإعدادات > سجلات العمل، فعِّل الوحدة. يمكن لكل عضو بعدها تسجيل وقته عبر زر المؤقت على مهمة مفتوحة. التقارير المجمَّعة حسب المشروع والفترة متاحة من التقارير > سجلات العمل.

نسخ احتياطية أسبوعية لـ ‎PostgreSQL: أضف هذا الأمر المجدوَل على الـ ‎VPS لتصدير قاعدة البيانات أسبوعيًا: 0 3 * * 0 docker exec openproject_db pg_dump -U openproject openproject | gzip > /var/backups/openproject_$(date +%Y%m%d).sql.gz. احتفظ بالأرشيفات السبع الأخيرة بـ find /var/backups -name 'openproject_*.sql.gz' -mtime +7 -delete. اختبر الاستعادة مرة في الشهر في بيئة معزولة.

استكشاف الأخطاء — المشكلات الشائعة

‎الأخطاء الأكثر شيوعاً أثناء نشر ‎OpenProject أو استخدامه لأول مرة، مع حلولها.

  • خطأ 502 Bad Gateway عند الإقلاع الأول: لم تكتمل هجرات ‎Rails. انتظر دقيقتين إلى خمس دقائق وتحقق من docker compose logs web للتأكد من الاستماع على المنفذ 8080.
  • صفحة بيضاء أو خطأ 500: SECRET_KEY_BASE فارغ أو محدَّد بشكل خاطئ. أعد توليده بـ openssl rand -hex 64 وأعد التشغيل بـ docker compose up -d --force-recreate.
  • رفض المرفقات: الحجم الافتراضي لـ ‎nginx هو 1 ميغابايت. زد client_max_body_size في ملف ‎vhost (100 ميغابايت موصى بها لملفات المشاريع).
  • مشاكل إرسال البريد الإلكتروني: اضبط متغيرات OPENPROJECT_SMTP_* في .env (خادم ‎SMTP، المنفذ 587، بيانات الاعتماد). بدون إعداد ‎SMTP، لن تُرسَل دعوات الأعضاء.
  • تحديث الصورة: docker compose pull && docker compose up -d. يُنفِّذ ‎OpenProject الهجرات تلقائيًا عند الإقلاع. احتفظ بنسخة احتياطية من قاعدة البيانات قبل كل تحديث رئيسي.

التبني السيادي: الحالة الهولندية. في سبتمبر 2026، نشرت الحكومة الهولندية مواصفات ‎DAWO (‎Digitaal Autonome Werkomgeving Overheid)، وهو خطة بيئة عمل سيادية قائمة على ‎NixOS. تشمل الحزمة المختارة ‎Nextcloud للملفات، و‎Element للمراسلة، و‎Collabora لمستندات المكتب، و‎OpenProject لإدارة المشاريع. هذا الاختيار يُثبت نضج الأداة في السياقات التي لا يمكن فيها تفويض استضافة البيانات لمزود أمريكي.

للمزيد. يُغطي ‎OpenProject المشاريع ذات المتطلبات الثقيلة في ‎Gantt وجداول الأوقات. بالنسبة لإدارة المتراكمات في بيئة رشيقة، يُناسب ‎Plane (الدورات والسباقات) أكثر. أما للـ ‎Kanban الخفيف بأدنى استهلاك للذاكرة، يظل ‎Kaneo الخيار الأوفر. إذا كنت تدير عملاء متعددين من واجهة واحدة، يتيح لك فضاء الوكالة في ‎ServOrbit الإشراف على ‎VPS كل عميل والوصول إلى وحدات التحكم وإدارة التجديدات دون التنقل بين لوحات قيادة متعددة.

أدِر خوادم ‎VPS عملائك من فضاء مركزي

يُتيح لك فضاء الوكالة في ‎ServOrbit توفير جميع خوادم ‎VPS عملائك ومراقبتها وتجديدها من واجهة واحدة. يمتلك كل عميل بيئته المعزولة الخاصة، وتحتفظ أنت بالسيطرة الكاملة على البنية التحتية.

بحاجة إلى مساعدة؟

تصفّح مركز المساعدة والأسئلة الشائعة، أو تواصل مع فريقنا — معاودة اتصال أو WhatsApp أو بريد إلكتروني. الدعم بـالعربية والفرنسية والإنجليزية.

راسلنا على WhatsAppيُفتح في علامة تبويب جديدة