دليل النشر

استضافة Forgejo على خادم VPS الخاص بك

انشر على VPS Cloud →

الاستضافة الذاتية7 دقيقة قراءة

استضافة Forgejo على خادم VPS الخاص بك

Forgejo هي التفريعة المجتمعية لـGitea، تقودها Codeberg e.V. وتخضع لحوكمة جمعوية. تسعى إلى منصة Git سيادية فعلًا، قابلة للاتحاد ودون تبعية تجارية. إليك كيفية نشرها على خادم VPS الخاص بك مع Docker وreverse proxy وشهادة SSL، وما يميّزها عن Gitea.

لماذا تختار Forgejo لمنصتك ذاتية الاستضافة

وُلدت Forgejo عام 2022 إثر خلاف حول حوكمة Gitea التي انتقلت إلى سيطرة شركة. يُصان المشروع الآن من قِبل جمعية غير ربحية ويتقدّم نحو منصة لامركزية قادرة على الاتحاد عبر ActivityPub — والهدف أن يتمكّن مستودع على منصة ما من التفاعل مع مسألة (issue) فُتحت من منصة أخرى. ولمن يقدّر ديمومة أدواته واستقلاليتها، تقدّم Forgejo الخصائص التقنية نفسها التي تقدّمها Gitea (الخفّة والسرعة والاستهلاك المنخفض) مع ضمان ترخيص وحوكمة مجتمعيَّين بالكامل. وهي المنصة المرجعية لـCodeberg، ما يثبت قدرتها على تحمّل الحِمل في بيئة الإنتاج.

فوائد ملموسة لـForgejo ذاتية الاستضافة

  • حوكمة جمعوية غير ربحية: لا خطر من تحوّل تجاري للمشروع.
  • Forgejo Actions، متوافق مع صيغة مسارات عمل GitHub Actions، دون خدمة طرف ثالث.
  • ترحيل بلا عناء من Gitea: صيغة قاعدة البيانات ووحدة تخزين البيانات نفسها.
  • اتحاد ActivityPub قيد النشر لربط المنصات ببعضها.
  • بصمة خفيفة مطابقة لـGitea: مثالية على خادم VPS متواضع.
  • برمجية حرّة بنسبة 100%، دون نسخة مؤسسية مدفوعة ولا ميزة مقيَّدة.

المتطلبات العتادية والبرمجية

مثل Gitea، Forgejo مقتصدة للغاية. يتحمّل خادم VPS بمعالجَين افتراضيَّين (2 vCPU) و2 غيغابايت من الذاكرة (RAM) فريقًا من 10 إلى 20 مطوّرًا بلا عناء؛ انتقل إلى 4 غيغابايت إذا شغّلت Forgejo Actions مع runners تصرّف الشيفرة محليًا. احجز من 20 إلى 40 غيغابايت من SSD للمستودعات والتاريخ. تحتاج إلى Docker وDocker Compose، ونطاق فرعي git.yourdomain.com مع سجل A يشير إلى عنوان IP الخاص بخادم VPS، ومنفذ مختلف عن المنفذ 22 الخاص بالنظام لـSSH المستودعات (مثلًا 2222).

نشر Forgejo مع Docker وSSL

01

تهيئة البيئة

عبر SSH على خادم VPS، ثبّت Docker وإضافة Compose، ثم أنشئ /opt/forgejo. خصّص مجلدًا فرعيًا data يحتوي على المستودعات والإعداد والصور الرمزية، مركَّبًا كوحدة تخزين لمقاومة التحديثات.

02

كتابة ملف docker-compose.yml

استخدم الصورة الرسمية codeberg.org/forgejo/forgejo:latest. أضِف خدمة postgres:16 لقاعدة البيانات. ركّب ./data:/data، واضبط USER_UID/USER_GID على 1000 وانشُر SSH الخاص بـForgejo على المضيف عبر "2222:22"، مع إبقاء المنفذ 3000 داخليًا.

03

بدء الحزمة (stack)

نفّذ docker compose up -d، ثم راقِب docker compose logs -f forgejo حتى ترى خادم HTTP يستمع على المنفذ 3000 وقاعدة البيانات تستجيب.

04

إعداد reverse proxy وSSL

مع Caddy: git.yourdomain.com { reverse_proxy localhost:3000 }، تُدار شهادة Let's Encrypt تلقائيًا. مع Traefik أو Nginx، مرّر الطلبات إلى 127.0.0.1:3000 وفعّل HTTP/2 وكذلك إعادة التوجيه من HTTP إلى HTTPS.

05

إعداد المنصة

ادخل إلى https://git.yourdomain.com، وأدخِل مضيف PostgreSQL (db:5432)، وعنوان URL الأساسي بصيغة HTTPS، ومنفذ SSH الخارجي 2222. أنشئ حساب المدير وعطّل التسجيل الذاتي لمنصة خاصة.

06

ربط runner خاص بـForgejo Actions

احصل على رمز التسجيل من لوحة الإدارة، ثم شغّل حاوية forgejo-runner تشير إلى منصتك. تحقّق عبر مسار عمل بسيط .forgejo/workflows/ci.yml ينفّذ echo ok.

إذا كنت تُرحّل من منصة Gitea قائمة، تقرأ Forgejo وحدة تخزين البيانات نفسها وقاعدة البيانات نفسها مباشرةً: أوقِف Gitea، وخذ نسخة احتياطية، واستبدل الصورة بصورة Forgejo في ملف docker-compose.yml، ثم أعِد التشغيل. يجب أن يكون إصدار Forgejo متوافقًا مع إصدار Gitea المستخدَم — تحقّق من جدول تطابق الإصدارات قبل التبديل لتفادي ترحيل مخطط قاعدة البيانات في اتجاه واحد. خذ دائمًا لقطة (snapshot) لخادم VPS قبل العملية.

Forgejo مقابل Gitea

المعيارForgejoGitea
الحوكمةجمعية غير ربحية (Codeberg e.V.)شركة تجارية
الترخيص / النموذجحرّ بنسبة 100%، دون نسخة مؤسسيةمفتوح المصدر مع نسخة Gitea Cloud تجارية
CI/CD مدمجForgejo Actions (متوافق مع GitHub Actions)Gitea Actions (متوافق مع GitHub Actions)
الاتحادActivityPub قيد التطوير النشطغير ذي أولوية
استهلاك الذاكرة (RAM)منخفض جدًا (~200-300 ميغابايت)منخفض جدًا (~200-300 ميغابايت)
الترحيل المتبادليقرأ وحدة تخزين Gitea وقاعدة بياناتهاأصل التفريعة
صورة Dockercodeberg.org/forgejo/forgejogitea/gitea
حالة الاستخدام النموذجيةالسيادة والديمومة المجتمعيةمنصة عامة مع خدمات مُدارة ممكنة

استضِف منصة Forgejo السيادية الخاصة بك على خادم VPS Cloud من ServOrbit

مع خادم VPS Cloud مزوَّد بـDocker جاهز للاستخدام، أقِم Forgejo وrunner الخاص بـCI/CD في بضعة أوامر. تحتفظ بالسيطرة الكاملة على شيفرتك وبياناتك.

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

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