دليل النشر

استضافة Kaneo على VPS: إدارة مشاريع مفتوحة المصدر وبسيطة

انشر على VPS Cloud ←

دليل عملي

استضافة Kaneo على VPS: إدارة مشاريع مفتوحة المصدر وبسيطة

الاستضافة الذاتية10 دقائق للقراءةعدد الخطوات: 5

يفرض Jira رسومًا بالمستخدم، ويحجب Linear الميزات خلف خطط مدفوعة، ويحدد Trello الأعمدة في النسخة المجانية. يتبنى Kaneo (MIT، أكثر من 7.9 آلاف نجمة، v2.16.2 — صدر 10 أغسطس 2026) نهجًا مختلفًا: مدير مشاريع بسيط تستضيفه على خادم VPS الخاص بك. لوحات Kanban وتكامل GitHub Milestones وwebhooks — بدون العروض التي لن تستخدمها أبدًا أو رسوم الاشتراك.

المحتويات· لماذا تختار مدير مشاريع بسيطًا؟1/11
  1. 01لماذا تختار مدير مشاريع بسيطًا؟
  2. 02ما تحصل عليه مع Kaneo المستضاف ذاتيًا
  3. 03المتطلبات الأساسية
  4. 04انشر Kaneo على خادمك VPS
  5. 05الإعداد المتقدم: مساحات عمل متعددة وعزل الفرق
  6. 06Webhooks لأتمتة CI/CD
  7. 07النسخ الاحتياطي واستعادة PostgreSQL
  8. 08تحديث Kaneo إلى إصدار جديد
  9. 09إعداد SMTP لإشعارات البريد الإلكتروني
  10. 10استكشاف الأخطاء: أكثر المشكلات شيوعًا
  11. 11Kaneo وPlane وHuly: أيهم تستضيف ذاتيًا؟

لماذا تختار مدير مشاريع بسيطًا؟

تميل أدوات إدارة المشاريع SaaS إلى الثقل مع كل إصدار: عروض جديدة ولوحات ذكاء اصطناعي وتقارير تدفن الميزات التي تستخدمها فعلاً. ينطلق Kaneo من الافتراض المعاكس: معظم الفرق تحتاج فقط إلى لوحة Kanban وارتباط بمستودع الكود. بالاستضافة الذاتية، تستعيد السيطرة الكاملة — مهامك في قاعدة بيانات PostgreSQL على خادمك، قابلة للتصدير بـ SQL في أي وقت، دون خطة مميزة لتفعيل webhooks أو سجل غير محدود.

ما تحصل عليه مع Kaneo المستضاف ذاتيًا

  • لوحات Kanban بالسحب والإفلات — أنشئ الأعمدة وأضف المهام وتابع التقدّم بنظرة واحدة.
  • مزامنة GitHub Milestones — اربط تطبيق GitHub الخاص بك لتنعكس المعالم كمشاريع والمسائل كمهام تلقائيًا.
  • وجهات Webhook — أطلق نداءات HTTP خارجية عند كل تغيّر في حالة مهمة، لإشعار Slack أو خط التكامل المستمر لديك.
  • رخصة MIT — بلا قيود تجارية، والاشتقاق والتعديل حرّان.
  • حاويتان فقط — تطبيق Node‎.js وPostgreSQL 16، بأثر ذاكرة أقل من 400 ميغابايت إجمالًا.
  • تسجيل دخول بلا SMTP — بريد إلكتروني وكلمة مرور، دون خطوة تحقق برابط.
  • مساحات عمل متعددة — اعزل المشاريع حسب العميل أو الفريق في مساحات منفصلة.

المتطلبات الأساسية

يكفي خادم ServOrbit VPS بنظام Ubuntu 24.04 وذاكرة لا تقل عن 1 جيجابايت لفريق صغير. Kaneo خفيف: واجهة Hono البرمجية (Node‎.js) وتطبيق Vue‎.js أحادي الصفحة يستهلكان معًا أقل من 200 ميغابايت أثناء الخمول، ويضيف PostgreSQL 16 نحو 300 ميغابايت. يُثبَّت Docker وDocker Compose تلقائيًا عند النشر. لا يُشترط اسم نطاق — يعمل Kaneo خلف العنوان الذي تمنحه ServOrbit — لكن نطاقًا فرعيًا مخصصًا (مثل projects‎.your-domain‎.com) يسهّل المشاركة.

انشر Kaneo على خادمك VPS

  1. نشر بنقرة واحدة من سوق ServOrbit

    افتح لوحة تحكم ServOrbit واذهب إلى سوق التطبيقات ← التعاون والإنتاجية ← Kaneo، ثم انقر نشر. يُثبّت AWX تلقائيًا Docker ويُولّد أسرار قاعدة البيانات والمصادقة ويضبط nginx ويُشغّل الحاويتين في أقل من دقيقتين.

  2. أنشئ حساب المشرف الأول

    افتح رابط Kaneo في متصفحك. يظهر نموذج تسجيل — هذا هو التشغيل الأول. أدخل اسمك وبريدك الإلكتروني وكلمة مرور. يحصل المستخدم الأول تلقائيًا على صلاحيات المشرف على مساحة العمل الافتراضية.

  3. أنشئ مساحة عمل وأول مشروع

    بعد تسجيل الدخول تصل إلى صفحة مساحة العمل. انقر مشروع جديد، وسمّه واختر لونًا. أضف أول مهمة بالنقر على + في عمود Kanban الذي تريده. حدّد مسؤولًا وأضف وصفًا وتاريخ استحقاق إن احتجت.

  4. اربط GitHub (اختياري)

    إذا كان كودك على GitHub، ثبّت تطبيق Kaneo من الإعدادات ← التكاملات. بعد الإذن، يُزامن Kaneo معالم GitHub كمشاريع ومسائل كمهام. تستطيع Webhooks تحديث حالة المهمة تلقائيًا عند دمج Pull Request.

  5. اضبط webhooks الإشعارات (اختياري)

    في الإعدادات ← Webhooks، أضف رابط قناة Slack الواردة أو نظام التذاكر لديك. يرسل Kaneo طلب POST بصيغة JSON عند كل تغيّر في الحالة — مفيد لإشعار الفريق دون استطلاع دوري.

أغلق التسجيل فور تجهيز فريقك: من الإعدادات ← عام، عطّل خيار السماح بالتسجيل. بدون هذه الخطوة يستطيع أي شخص يعرف الرابط إنشاء حساب. وللفرق التقنية التي تفضّل الالتزامات على القصص، اربط تطبيق GitHub ودع طلبات الدمج تُحدّث اللوحة تلقائيًا.

الإعداد المتقدم: مساحات عمل متعددة وعزل الفرق

يدعم Kaneo مساحات عمل متعددة على نفس الخادم. لكل مساحة مشاريعها وأعضاؤها وwebhooks الخاصة بها — مناسب لعزل العملاء أو الفرق على VPS واحد دون تعدد عمليات النشر.

لإنشاء مساحة عمل ثانية، انقر على المحدد في أعلى يسار الواجهة واختر مساحة عمل جديدة. أعضاء مساحة لا يمكنهم الوصول إلى الأخرى: العزل تطبيقي وليس مجرد واجهة. يمكنك استضافة مشاريع العميل أ ومشاريع العميل ب على نفس الخادم، كل منها بلوحاته وتكاملاته مع GitHub بشكل منفصل.

إذا احتجت إلى حقول مخصصة على المهام، تحقق من التوثيق الرسمي لـ Kaneo قبل الاعتماد عليها: الحقول المخصصة ضمن خارطة الطريق، لكن توفرها يختلف حسب الإصدار المنشور.

Webhooks لأتمتة CI/CD

تُعدّ webhooks Kaneo من أبرز مزاياه لفرق التطوير. عند كل تغيير في حالة مهمة — نقل عمود، تعيين، تعليق — يرسل Kaneo طلب POST بصيغة JSON إلى العنوان الذي تختاره.

حالات الاستخدام الشائعة:

- إشعار Slack: أضف رابط Incoming Webhook لقناتك لتلقي تنبيه عند انتقال مهمة إلى "قيد التنفيذ" أو "مكتملة".
- تشغيل خط CI: أرسل الحدث إلى نظام CI الخاص بك (GitHub Actions، Gitea Actions، Jenkins) لتشغيل بناء أو نشر تلقائي عند وصول مهمة إلى عمود مستهدف.
- مزامنة مع نظام خارجي: يمكن توجيه الطلبات إلى أي API — أداة تقارير، قاعدة تذاكر، أو webhook لـ n8n لأتمتة تدفقات معقدة.

اختبر نقاط الوصول بخدمة مثل webhook‎.site قبل ربطها بالإنتاج، للتحقق من تطابق التنسيق مع ما يتوقعه نظام CI الخاص بك.

النسخ الاحتياطي واستعادة PostgreSQL

يخزّن Kaneo جميع بياناته في PostgreSQL 16. النسخ الاحتياطي المنتظم ضروري: بدونه، قد تفقد سجل مهامك كاملًا في حال تعطّل التحديث أو تلف وحدة التخزين.

أتمتة النسخ الاحتياطي بـ cron وrclone

# /etc/cron‎.d/kaneo-backup
0 3 * * * root docker exec kaneo-db pg_dump -U kaneo kaneo | gzip > /var/backups/kaneo/$(date +\%Y\%m\%d)‎.sql‎.gz
5 3 * * * root rclone copy /var/backups/kaneo/ s3:my-bucket/kaneo/ --max-age 30d

استبدل kaneo-db باسم حاوية PostgreSQL الفعلي (docker ps للتحقق).

استعادة نسخة احتياطية

docker stop kaneo-app
gunzip -c /var/backups/kaneo/20260901‎.sql‎.gz | docker exec -i kaneo-db psql -U kaneo kaneo
docker start kaneo-app

احتفظ بسبعة نسخ محلية على الأقل و30 يومًا من النسخ البعيدة. اختبر الاستعادة على بيئة منفصلة قبل أن تحتاجها فعلاً.

تحديث Kaneo إلى إصدار جديد

يُصدر Kaneo نسخه على GitHub. إجراء التحديث معياري لنشر Docker Compose:

docker compose pull
docker compose up -d
docker compose ps

قبل أي تحديث، أجرِ نسخًا احتياطيًا كاملًا. اقرأ ملاحظات الإصدار على GitHub: بعض التحديثات تتضمن ترحيل قاعدة بيانات يعمل تلقائيًا عند بدء تشغيل الحاوية. إذا فشل الترحيل، ستجد التفاصيل في سجلات الحاوية (docker logs kaneo-app).

إعداد SMTP لإشعارات البريد الإلكتروني

لا يتطلب Kaneo افتراضيًا خادم SMTP: التسجيل يتم بالبريد وكلمة المرور دون رابط تحقق. هذا يبسّط النشر الأولي لكنه يحدّ من إشعارات البريد (إعادة تعيين كلمة المرور، تنبيهات المهام).

إذا كان إصدارك من Kaneo يدعم إعداد SMTP، فالمتغيرات في ملف docker-compose‎.yml:

SMTP_HOST=smtp‎.your-domain‎.com
SMTP_PORT=587
SMTP_USER=kaneo@your-domain‎.com
SMTP_PASSWORD=your-password
SMTP_FROM=kaneo@your-domain‎.com

بعد تعديل المتغيرات، أعد تشغيل الحاويات بـ docker compose up -d. اختبر الإرسال من واجهة الإدارة قبل إغلاق التسجيل العام.

استكشاف الأخطاء: أكثر المشكلات شيوعًا

الحاوية تُعيد التشغيل باستمرار عند البدء

السبب الأكثر شيوعًا: متغير سري مفقود أو مشوّه في ملف البيئة. تحقق من سجلات الحاوية (docker logs kaneo-app) — يُشير الخطأ عادةً إلى المتغير الغائب.

الواجهة تحمّل لكن تسجيل الدخول يفشل بـ "Invalid credentials"

أول حساب يُنشأ هو المشرف. إذا أعدت تشغيل الحاوية دون حذف وحدة تخزين PostgreSQL، فالحساب موجود في قاعدة البيانات: جرّب تسجيل الدخول ببيانات أول تسجيل.

Webhooks لا تُطلَق

تحقق أن عنوان URL الوجهة متاح من الحاوية (ليس localhost على المضيف — استخدم عنوان IP خارجي أو اسم نطاق).

مزامنة GitHub تتوقف بعد ساعات

تطبيق GitHub يتطلب أن يكون عنوان الاستدعاء متاحًا عبر HTTPS من الإنترنت. تحقق من صلاحية شهادة SSL وأن المنفذ 443 مفتوح على خادمك.

أداء متراجع مع كثرة المهام

على VPS بذاكرة 1 جيجابايت، قد يصبح PostgreSQL عائقًا مع تنامي البيانات. زد shared_buffers في إعدادات PostgreSQL أو انتقل إلى خطة بذاكرة 2 جيجابايت.

Kaneo وPlane وHuly: أيهم تستضيف ذاتيًا؟

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

المعيارKaneoPlaneHuly
الرخصةMITAGPL-3.0EPL-2.0
الحاويات المطلوبة2 (تطبيق + PostgreSQL)5–7 (API، worker، Redis، RabbitMQ، MinIO…)6–8 (API، Collaborator، MongoDB، MinIO، Elastic…)
الذاكرة الموصى بها1 جيجابايت (يعمل)2–4 جيجابايت كحد أدنى4–8 جيجابايت موصى به
لوحات Kanbanنعمنعم (Cycles، Modules)نعم (Issues، Planner)
تكامل GitHubMilestones + webhooksاستيراد Issues، GitLab أيضًاIssues وPRs والفروع
عروض Ganttلانعمنعم (Planner)
دردشة مدمجةلالانعم (Chunter)
توثيق / ويكيلاPagesChunter + Documents
صعوبة النشرمنخفضة جدًامتوسطةعالية
الأنسب لـفرق الكود الأول، Kanban فقطفرق المنتج المنظمةاستبدال Linear + Notion + Slack

يعتمد الاختيار الصحيح على ما تريد استبداله. Kaneo يستبدل Trello أو Kanban خفيفًا بأدنى احتكاك في التثبيت. Plane يستبدل Jira المبسّط مع دورات ووحدات. Huly يستبدل منظومة أوسع (Linear + Notion + Slack) لكنه يحتاج جهازًا أقوى وإعدادًا أطول. على VPS بذاكرة 1 جيجابايت، يعمل Kaneo فقط بشكل مريح — يحتاج Plane 2 جيجابايت، بينما يستلزم Huly 4 جيجابايت على الأقل للاستقرار.

انشر Kaneo على خادمك الخاص

استضف Kaneo ذاتيًا على خادم ServOrbit VPS — مفتوح المصدر MIT، بدون اشتراك، إدارة مشاريعك على بنيتك التحتية.

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

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

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