[{"data":1,"prerenderedAt":159},["ShallowReactive",2],{"seo-verification":3,"blog-gitea-vs-gitlab-ar":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"id":7,"slug":8,"title":9,"excerpt":10,"readTime":11,"views":12,"isPinned":13,"publishedAt":14,"category":15,"categories":20,"featuredImage":22,"bgImage":23,"posterImage":24,"relatedSolution":25,"intro":28,"sections":29,"ctaTitle":111,"ctaBody":112,"ctaButton":113,"ctaUrl":114,"relatedPosts":115},99,"gitea-vs-gitlab","Gitea مقابل GitLab: أي منصة Git مستضافة ذاتيًا على VPS؟","Gitea مقابل GitLab المستضاف ذاتيًا: مقارنة بصمة الذاكرة وCI\u002FCD والسجلّات وقابلية التوسّع لاختيار منصة Git على VPS.",8,263,false,"2026-03-13T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":18},5,"مقارنات","comparatif","bg-info\u002F10 text-info",[21],{"id":16,"name":17,"slug":18,"color":19,"icon":18},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fgitea-vs-gitlab-poster.svg",{"categorySlug":26,"appSlug":27},"self-hosting","gitea","استضافة منصة Git خاصة بك تعني استعادة السيطرة على شيفرتك وتكاملك المستمر (CI) وأسرارك. يراهن Gitea على الخفّة، وGitLab على المنصة المتكاملة. إليك كيفية الحسم ونشر منصتك على VPS.",[30,34,44,47,69,108],{"type":31,"title":32,"body":33},"h2","لماذا تستضيف منصة Git ذاتيًا على VPS","منصة Git المستضافة ذاتيًا تُبقي ملكيتك الفكرية بعيدًا عن المنصات العامة وتزيل أي حد تعسّفي على عدد المستودعات الخاصة أو المتعاونين أو دقائق CI. على VPS، تتحكّم في موقع البيانات والنسخ الاحتياطي والتكامل مع خط الإنتاج الداخلي الخاص بك. Gitea (وفرعه Forgejo) مكتوب بلغة Go: ثنائي (binary) واحد، إقلاع فوري، بصمة ذاكرة ضئيلة، مثالي لـ VPS متواضع. أما GitLab CE فهو حزمة متكاملة (المشكلات وCI\u002FCD وسجل Docker وسجل الحزم وويكي والبيئات) لكنه يستهلك ذاكرة (RAM) أكبر بكثير. يعتمد الخيار على حاجتك: Git نظيف وسريع، أو منصة DevOps متكاملة في منتج واحد.",{"type":35,"title":36,"items":37},"ul","فوائد منصة مستضافة ذاتيًا",[38,39,40,41,42,43],"مستودعات خاصة غير محدودة من دون اشتراك لكل مقعد","CI\u002FCD تحت سيطرتك، مع مُشغِّلاتك الخاصة على VPS","الأسرار والرموز (tokens) مخزَّنة لديك، خارج أي منصة طرف ثالث","سجل صور Docker والحزم مدمج، قريب من عمليات نشرك","الامتثال وتوطين البيانات في المغرب تحت السيطرة","مع Gitea: ثنائي واحد، ونسخ احتياطي بنسخ مجلد وقاعدة بيانات",{"type":31,"title":45,"body":46},"المتطلبات حسب المنصة المختارة","Gitea اقتصادي: يكفي 1 vCPU و1 غيغابايت من الذاكرة لفريق صغير، و2 غيغابايت مع قاعدة البيانات وبضعة مُشغِّلات. أما GitLab CE فأكثر نهمًا بكثير: استهدف 4 غيغابايت من الذاكرة كحد أدنى (يُوصى بـ 8 غيغابايت في الاستخدام الفعلي مع CI)، و4 vCPU وقرصًا سريعًا، لأن الحزمة تتضمّن PostgreSQL وRedis وSidekiq وGitaly. في كلتا الحالتين تحتاج إلى Docker وCompose، ونطاق فرعي (git.yourdomain.com)، وبروكسي عكسي لأجل TLS، ويُفضَّل نطاق فرعي ثانٍ إذا فعّلت سجل Docker. خصّص وحدة تخزين مخصصة للمستودعات واستراتيجية للنسخ الاحتياطي.",{"type":48,"title":49,"steps":50},"steps","نشر Gitea (أو GitLab) على VPS باستخدام Docker",[51,54,57,60,63,66],{"title":52,"body":53},"إنشاء وحدات التخزين والشبكة","جهّز `mkdir -p \u002Fsrv\u002Fgitea\u002F{data,db}` وشبكة Docker مخصصة `docker network create forge`. يسهّل الفصل بين data وdb النسخ الاحتياطي المستقل للشيفرة ولقاعدة البيانات.",{"title":55,"body":56},"تعريف ملف docker-compose.yml","بالنسبة إلى Gitea، عرِّف خدمة `gitea\u002Fgitea` إضافةً إلى `postgres`، وركِّب وحدات التخزين، واكشف منفذ HTTP `3000` ومنفذ SSH الخاص بـ Git `2222` محليًا. أما بالنسبة إلى GitLab، فاستخدم `gitlab\u002Fgitlab-ce` مع المتغير `GITLAB_OMNIBUS_CONFIG` لتعيين `external_url`.",{"title":58,"body":59},"التشغيل وإنهاء التثبيت","نفِّذ `docker compose up -d`. يعرض Gitea معالج تثبيت عند أول اتصال (أدخِل نوع قاعدة البيانات والنطاق)؛ أما GitLab فيستغرق عدة دقائق للتهيئة، فاحصل على كلمة مرور root المُولَّدة من السجلات (logs).",{"title":61,"body":62},"ضبط البروكسي العكسي وSSL","وجِّه git.yourdomain.com إلى منفذ HTTP الخاص بالمنصة باستخدام Caddy أو Nginx للحصول على شهادة Let's Encrypt. احرص على تمرير `X-Forwarded-Proto` الصحيح كي تكون روابط الاستنساخ عبر HTTPS صحيحة.",{"title":64,"body":65},"تفعيل SSH الخاص بـ Git","اربط منفذ SSH الخاص بالحاوية بمنفذ على الـ VPS (مثل 2222) واضبط مفاتيحك. عيِّن `SSH_DOMAIN` كي تكون أوامر `git clone` التي تقترحها الواجهة دقيقة.",{"title":67,"body":68},"توصيل CI\u002FCD","سجِّل مُشغِّلًا (runner): إما Gitea Actions (متوافق مع صياغة GitHub Actions) أو GitLab Runner عبر Docker. حُدّ من موارده واعزله في حاويته الخاصة كي لا تُسقط مهمة ثقيلة المنصة.",{"type":70,"headers":71,"rows":75},"comparison",[72,73,74],"المعيار","Gitea","GitLab CE",[76,80,84,88,92,96,100,104],[77,78,79],"الحد الأدنى المُوصى به من الذاكرة","1 إلى 2 غيغابايت","4 إلى 8 غيغابايت",[81,82,83],"البنية","ثنائي Go واحد","حزمة متعددة الخدمات (omnibus)",[85,86,87],"زمن الإقلاع","شبه فوري","عدة دقائق",[89,90,91],"CI\u002FCD مدمج","Gitea Actions (بأسلوب GitHub)","GitLab CI\u002FCD، متكامل جدًا",[93,94,95],"سجل Docker \u002F الحزم","مُضمَّن وخفيف","مُضمَّن وغني",[97,98,99],"إدارة المشاريع (المشكلات، اللوحات)","أساسية","متقدمة (epics حسب الإصدار)",[101,102,103],"سهولة النسخ الاحتياطي","مجلد + تفريغ SQL","إجراء omnibus مخصص",[105,106,107],"مثالي لـ","VPS متواضع، فريق صغير\u002Fمتوسط","منصة DevOps متكاملة",{"type":109,"body":110},"tip","في GitLab، تجنّب الـ OOM-kill على VPS صغير بتقليل التزامن: اضبط `puma['worker_processes']` على 2 و`sidekiq['max_concurrency']` على 10 في إعدادات omnibus. وإذا ظلّت الذاكرة مشكلة، فانظر إلى Forgejo (فرع مجتمعي من Gitea) الذي يحافظ على الخفّة مع تغطية 90% من احتياجات الفريق، بما في ذلك السجل وActions.","منصة Git الخاصة بك جاهزة للاستنساخ","يتيح لك VPS Cloud من ServOrbit مع قالب Docker نشر Gitea أو GitLab مع بروكسي عكسي وSSL ومُشغِّل CI في بضع خطوات، من مساحة العميل الخاصة بك.","أطلق منصتي على VPS","\u002Fvps-cloud",[116,130,144],{"id":117,"slug":118,"title":119,"excerpt":120,"readTime":11,"views":121,"isPinned":13,"publishedAt":122,"category":123,"categories":124,"featuredImage":22,"bgImage":23,"posterImage":126,"relatedSolution":127},4,"coolify-vs-dokploy","Coolify مقابل Dokploy: أي أداة تختار للنشر على خادم VPS الخاص بك؟","مقارنة شاملة بين Coolify وDokploy: الميزات، والبساطة، وحالات الاستخدام. أي أداة تختار لاستضافة تطبيقاتك ونشرها على خادم VPS؟",2600,"2026-06-07T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":18},[125],{"id":16,"name":17,"slug":18,"color":19,"icon":18},"\u002Fblog\u002Fcovers\u002Fcoolify-vs-dokploy-poster.svg",{"categorySlug":128,"appSlug":129},"deploiement","coolify",{"id":131,"slug":132,"title":133,"excerpt":134,"readTime":11,"views":135,"isPinned":13,"publishedAt":136,"category":137,"categories":138,"featuredImage":22,"bgImage":23,"posterImage":140,"relatedSolution":141},93,"n8n-vs-node-red","n8n مقابل Node-RED: أي أداة أتمتة مستضافة ذاتياً تختار؟","n8n أم Node-RED لأتمتة سير عملك على خادم VPS؟ مقارنة تقنية، ومتطلبات Docker، ودليل النشر المستضاف ذاتياً.",641,"2026-03-19T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":18},[139],{"id":16,"name":17,"slug":18,"color":19,"icon":18},"\u002Fblog\u002Fcovers\u002Fn8n-vs-node-red-poster.svg",{"categorySlug":142,"appSlug":143},"automatisation","n8n",{"id":145,"slug":146,"title":147,"excerpt":148,"readTime":149,"views":150,"isPinned":13,"publishedAt":151,"category":152,"categories":153,"featuredImage":22,"bgImage":23,"posterImage":155,"relatedSolution":156},94,"supabase-vs-appwrite","Supabase مقابل Appwrite: أي واجهة خلفية مستضافة ذاتياً لخادم VPS الخاص بك؟","Supabase أم Appwrite مستضافة ذاتياً على خادم VPS؟ مقارنة الواجهة الخلفية (المصادقة، وقاعدة البيانات، والتخزين)، ومتطلبات Docker، ودليل نشر كامل.",9,678,"2026-03-18T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":18},[154],{"id":16,"name":17,"slug":18,"color":19,"icon":18},"\u002Fblog\u002Fcovers\u002Fsupabase-vs-appwrite-poster.svg",{"categorySlug":157,"appSlug":158},"bases-de-donnees","supabase",1785097283509]