[{"data":1,"prerenderedAt":158},["ShallowReactive",2],{"seo-verification":3,"blog-heberger-appwrite-vps-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":21,"featuredImage":23,"bgImage":24,"posterImage":25,"relatedSolution":26,"intro":28,"sections":29,"ctaTitle":112,"ctaBody":113,"ctaButton":114,"ctaUrl":115,"relatedPosts":116},61,"heberger-appwrite-vps","استضافة Appwrite على خادم VPS","استضِف Appwrite ذاتيًا على خادم VPS السحابي الخاص بك: خلفية BaaS كاملة في Docker لتطبيقات الويب والجوال، مقارنةً بـ Supabase.",9,657,false,"2026-04-20T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},6,"قواعد البيانات","bases-de-donnees","bg-teal-500\u002F10 text-teal-400","database",[22],{"id":16,"name":17,"slug":18,"color":19,"icon":20},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fheberger-appwrite-vps-poster.svg",{"categorySlug":18,"appSlug":27},"appwrite","Appwrite هو خلفية كخدمة (backend-as-a-service) مفتوحة المصدر مصمّمة لمطوّري الويب والجوال: قاعدة بيانات وثائقية، ومصادقة، وتخزين ملفات، ووظائف serverless، ومراسلة. استضافته ذاتيًا على خادم VPS تمنحك خلفية كاملة مُستضافة ذاتيًا، مع حزم SDK متعددة المنصّات ودون فوترة حسب الاستخدام.",[30,34,44,47,69,109],{"type":31,"title":32,"body":33},"h2","لماذا تستضيف Appwrite ذاتيًا على خادم VPS","يجمع Appwrite في منصّة واحدة كل ما يحتاجه التطبيق من جانب الخادم: مصادقة بأكثر من 30 طريقة OAuth، وقاعدة بيانات وثائقية بصلاحيات دقيقة، وتخزين ملفات مع تحويل الصور، ووظائف serverless بعدة لغات، ومراسلة. تفرض نسخته السحابية الفوترة حسب الاستخدام والموارد؛ وباستضافته ذاتيًا على خادم VPS، تنشر المنظومة بأكملها عبر Docker وتديرها من وحدة تحكم ويب أنيقة، دون حد أقصى. وهو مناسب بشكل خاص لمطوّري Flutter أو React Native أو الويب الذين يريدون خلفية جاهزة للاستخدام مع حزم SDK رسمية، مع الاحتفاظ بالبيانات والمنطق على بنيتهم التحتية الخاصة. تتحكم في الوظائف ومفاتيح API والصلاحيات، وتتوسّع وفق وتيرتك.",{"type":35,"title":36,"items":37},"ul","الفوائد الملموسة لـ Appwrite مُستضاف ذاتيًا",[38,39,40,41,42,43],"خلفية شاملة: Auth وDatabases وStorage وFunctions وMessaging في وحدة تحكم واحدة.","حزم SDK رسمية لـ Flutter وReact Native وWeb وAndroid وiOS وNode وPython والمزيد.","أكثر من 30 مزوّد OAuth مدمج (Google وGitHub وApple...) دون كتابة أي كود.","وظائف serverless مُستضافة ذاتيًا: نفّذ منطق أعمالك دون خدمة خارجية.","صلاحيات دقيقة على مستوى المستند والمجموعة، تُدار من وحدة التحكم.","لا فوترة لكل تنفيذ ولا حصة للمستخدمين: اشتراك VPS ثابت.",{"type":31,"title":45,"body":46},"المتطلبات المادية والبرمجية","ينسّق Appwrite عدة خدمات (API، ووحدة التحكم، وMariaDB، وRedis، وworkers، وبيئة تشغيل الوظائف عبر Docker-in-Docker). لنسخة تطوير، يكفي معالجان افتراضيان (2 vCPU) و4 غيغابايت من RAM مع 40 غيغابايت من SSD. أما للإنتاج مع وظائف serverless نشطة وعدة تطبيقات، فاستهدف 4 vCPU و8 غيغابايت من RAM و80 غيغابايت من SSD، لأن كل وظيفة تعمل في حاويتها المؤقتة الخاصة. على الصعيد البرمجي: Ubuntu 22.04\u002F24.04 LTS، وDocker وDocker Compose v2 (يدير Appwrite Traefik المدمج الخاص به للتوجيه وSSL)، واسم نطاق يشير إلى خادم VPS (مثل: `api.myapp.com`). يجب أن يكون المنفذان 80 و443 متاحين ليحصل Traefik على شهادات Let's Encrypt.",{"type":48,"title":49,"steps":50},"steps","نشر Appwrite مُستضاف ذاتيًا باستخدام Docker",[51,54,57,60,63,66],{"title":52,"body":53},"تهيئة خادم VPS والنطاق","ثبّت Docker، ووجّه نطاقك إلى عنوان IP الخاص بخادم VPS، وتأكد من أن المنفذين 80 و443 مفتوحان في `ufw`: يحتاجهما Traefik المدمج في Appwrite لتحدّي ACME الخاص بـ Let's Encrypt.",{"title":55,"body":56},"تشغيل المُثبّت الرسمي","نفّذ أمر التثبيت `docker run ... appwrite\u002Fappwrite install`: يسألك مُساعد تفاعلي عن النطاق ومنفذ HTTP\u002FHTTPS ويولّد ملف `docker-compose.yml` وكذلك ملف `.env` مع الأسرار. وهذه هي الطريقة الموصى بها بدلاً من كتابة compose يدويًا.",{"title":58,"body":59},"تهيئة النطاق وSSL","املأ `_APP_DOMAIN` و`_APP_DOMAIN_TARGET` باسم نطاقك. عندئذٍ يولّد Traefik شهادة HTTPS تلقائيًا. تحقق من الوصول إلى وحدة التحكم على `https:\u002F\u002Fapi.myapp.com` وأنشئ حساب المسؤول الجذر الخاص بك.",{"title":61,"body":62},"إنشاء مشروع وتطبيقه الأول","من وحدة التحكم، أنشئ مشروعًا، وأضف منصّة (Web أو Flutter أو Apple...) بالإعلان عن اسم المضيف المسموح به، واحصل على معرّف المشروع (ID). تُغذّي هذه المعلومات تهيئة SDK من جانب العميل.",{"title":64,"body":65},"تعزيز أمان تهيئة الإنتاج","في `.env`، اضبط `_APP_OPTIONS_ABUSE` و`_APP_OPTIONS_FORCE_HTTPS` على `enabled`، وهيّئ SMTP (`_APP_SMTP_*`) لرسائل البريد الإلكتروني للتحقق، وقيّد `_APP_CONSOLE_WHITELIST_*` إذا أردت تقييد الوصول إلى وحدة التحكم.",{"title":67,"body":68},"النسخ الاحتياطي لـ MariaDB والتخزين","جدوِل نسخة يومية (dump) لقاعدة بيانات MariaDB الخاصة بـ Appwrite وأرشف وحدة التخزين Storage (الملفات المرفوعة). وبما أن Appwrite يشفّر بعض البيانات بـ `_APP_OPENSSL_KEY_V1`، انسخ هذا السر احتياطيًا أيضًا: فبدونه تصبح الملفات المشفّرة غير قابلة للاستعادة.",{"type":70,"title":71,"headers":72,"rows":76},"comparison","Appwrite مقابل Supabase: أيهما تستضيف ذاتيًا؟",[73,74,75],"المعيار","Appwrite","Supabase",[77,81,85,89,93,97,101,105],[78,79,80],"قاعدة البيانات","MariaDB، نموذج وثائقي","PostgreSQL أصلي، SQL كامل",[82,83,84],"المنهج","موجّه نحو SDK وتطبيقات الجوال","موجّه نحو SQL والتطبيقات العلائقية",[86,87,88],"وظائف serverless","أصلية، متعددة اللغات ومدمجة","Edge Functions (Deno)",[90,91,92],"التثبيت","مُثبّت تفاعلي رسمي","Compose يُهيّأ يدويًا",[94,95,96],"SSL \u002F التوجيه","Traefik مدمج، تلقائي","وكيل عكسي خارجي يجب إضافته",[98,99,100],"البحث الشعاعي \u002F الذكاء الاصطناعي","غير أصلي","أصلي عبر pgvector",[102,103,104],"مثالي لـ","Flutter وReact Native، الجوال أولاً","SQL المتقدم، وRAG، والعلائقي",[106,107,108],"وحدة تحكم الإدارة","وحدة تحكم غنية وموجّهة","Studio يتمحور حول جداول SQL",{"type":110,"body":111},"tip","احرص حتمًا على نسخ المتغيّر `_APP_OPENSSL_KEY_V1` من ملف `.env` احتياطيًا في خزنة منفصلة: يستخدمه Appwrite لتشفير الملفات وبعض البيانات الحساسة، والاستعادة دون هذا المفتاح تجعل المحتوى المشفّر غير قابل للقراءة. أما لوظائف serverless في الإنتاج، فراقب استهلاك القرص المرتبط بحاويات بيئة التشغيل المؤقتة، وجدوِل `docker system prune` بانتظام لتجنّب امتلاء SSD بالصور الوسيطة.","استضِف خلفية Appwrite الخاصة بك ذاتيًا","يستضيف خادم ServOrbit Cloud VPS مع قالب Docker جاهز للاستخدام وأقراص SSD NVMe ومعالج مخصص حزمة Appwrite بالكامل، بما في ذلك وظائف serverless، عبر HTTPS.","انشر خادم VPS السحابي الخاص بي","\u002Fvps-cloud",[117,131,145],{"id":118,"slug":119,"title":120,"excerpt":121,"readTime":122,"views":123,"isPinned":13,"publishedAt":124,"category":125,"categories":126,"featuredImage":23,"bgImage":24,"posterImage":128,"relatedSolution":129},56,"heberger-postgresql-vps","PostgreSQL على خادم VPS: قاعدة بيانات موثوقة ومُتحكَّم بها","استضف PostgreSQL على خادم VPS: وحدات التخزين والنسخ الاحتياطية والوصول الشبكي المحدود والإعداد السليم لتطبيقاتك.",8,2240,"2026-04-25T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},[127],{"id":16,"name":17,"slug":18,"color":19,"icon":20},"\u002Fblog\u002Fcovers\u002Fheberger-postgresql-vps-poster.svg",{"categorySlug":18,"appSlug":130},"postgresql",{"id":132,"slug":133,"title":134,"excerpt":135,"readTime":136,"views":137,"isPinned":13,"publishedAt":138,"category":139,"categories":140,"featuredImage":23,"bgImage":24,"posterImage":142,"relatedSolution":143},57,"heberger-mysql-vps","استضافة MySQL على خادم VPS","استضِف MySQL على خادم VPS السحابي الخاص بك: نشر عبر Docker، وتأمين، وضبط إعدادات InnoDB، ونسخ احتياطية آلية، خطوة بخطوة.",7,509,"2026-04-24T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},[141],{"id":16,"name":17,"slug":18,"color":19,"icon":20},"\u002Fblog\u002Fcovers\u002Fheberger-mysql-vps-poster.svg",{"categorySlug":18,"appSlug":144},"mysql",{"id":146,"slug":147,"title":148,"excerpt":149,"readTime":136,"views":150,"isPinned":13,"publishedAt":151,"category":152,"categories":153,"featuredImage":23,"bgImage":24,"posterImage":155,"relatedSolution":156},58,"heberger-redis-vps","استضافة Redis على خادم VPS","انشر Redis على خادم VPS السحابي الخاص بك: تخزين مؤقت وجلسات وطوابير فائقة السرعة، مع استمرارية البيانات والأمان وضبط الذاكرة.",546,"2026-04-23T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},[154],{"id":16,"name":17,"slug":18,"color":19,"icon":20},"\u002Fblog\u002Fcovers\u002Fheberger-redis-vps-poster.svg",{"categorySlug":18,"appSlug":157},"redis",1785097283952]