لاستضافة Supabase ذاتيًا على خادم افتراضي خاص، تستنسخ حزمة Docker الرسمية، وتغيّر كل سرّ افتراضي، وتشغّل الحاويات، وتضع كل ذلك خلف وكيل عكسي مع HTTPS. يستغرق جزء الإقلاع نحو 15 دقيقة. أما الجزء الذي تتخطّاه القوائم — النسخ الاحتياطية، وتقوية الأمان، والميزات التي تفقدها بهدوء مقابل السحابة — فهو الجزء الذي يقرّر فعلًا ما إذا كان ينبغي لك القيام بهذا أصلًا. يسلك هذا الدليل المسار الكامل وهو صادق بشأن المقايضات.
Supabase مفتوح المصدر، لذا فإن Postgres وAuth وStorage وRealtime وStudio نفسها التي تحصل عليها على supabase.com يمكن أن تعمل على خادم افتراضي خاص بـ20 دولارًا تتحكم به أنت. نحن نشغّل Postgres الخاص بنا في TechRiseUps، فالميل هنا نحو امتلاك حزمتك — لكن الاستضافة الذاتية مقايضة حقيقية لا وجبة مجانية، وبقية هذا المقال يعاملها على هذا الأساس.
ما الذي تحصل عليه، وما الذي تتنازل عنه
تعكس الحزمة المستضافة ذاتيًا مشروعًا سحابيًا واحدًا، لكن عدة ميزات خاصة بالمنصة ببساطة غير موجودة في الصندوق.
| Supabase المستضاف ذاتيًا | Supabase السحابي | |
|---|---|---|
| الأساسيات (Postgres، Auth، Storage، Realtime، Studio) | نعم | نعم |
| النسخ الاحتياطية المُدارة + الاسترداد لنقطة زمنية | تبنيها بنفسك | مدمجة |
| مشاريع/مؤسسات متعددة في Studio | لا (مشروع واحد) | نعم |
| التفريع، المقاييس المتقدمة، ETL، حاويات المتجهات | لا | نعم |
| التحديثات | يدوية، أحيانًا تتأخّر عن الأحدث | تلقائية |
| الدعم | المجتمع فقط | الخطط المدفوعة |
| إقامة البيانات / التحكم الكامل | تام | يتحكم به البائع |
بحسب وثائق الاستضافة الذاتية لـSupabase، فإن ميزات المنصة مثل التفريع، والنسخ الاحتياطية المُدارة، والاسترداد لنقطة زمنية، وحاويات التحليلات، وواجهة برمجة تطبيقات الإدارة، غير متاحة عند الاستضافة الذاتية. تحصل على كل ما يلزم لتشغيل تطبيق — لكنك لا تحصل على شبكة الأمان المُدارة. وإذا كانت شبكة الأمان تلك هي السبب في استخدامك Supabase من البداية، فاقرأ قسم التكلفة في النهاية قبل أن تلتزم.
الخطوة 0: حدّد حجم الخادم الافتراضي الخاص بشكل صحيح
أكثر أخطاء الاستضافة الذاتية شيوعًا هو نقص التزويد. تشغّل حزمة Supabase نحو 12–15 حاوية وتجلس عند 3–4 جيجابايت من الذاكرة العشوائية في الخمول، قبل اتصال مستخدم واحد.
- 4 جيجابايت ذاكرة عشوائية هي الحدّ الأدنى المطلق — مناسبة للتطوير أو مشروع هواية سينهار تحت الحمل.
- 8 جيجابايت ذاكرة عشوائية هي نقطة البداية الواقعية لأي شيء قد تسمّيه إنتاجًا.
- 2 vCPU كحد أدنى؛ و4 إن شهد Realtime أو Edge Functions حركة مرور.
- تخزين NVMe سريع — فـPostgres حسّاس للإدخال/الإخراج، وكذلك استعادة نسخة احتياطية في الثانية صباحًا.
وإن أردت إبقاء صندوق صغير، يمكنك إسقاط الخدمات التي لا تستخدمها (Realtime، Storage، imgproxy، Edge Runtime) من ملف compose واستعادة جيجابايت أو اثنين. ولاختيار الجهاز الأساسي، يقارن ترتيبنا لأفضل استضافة خادم افتراضي خاص في 2026 نسبة السعر إلى الأداء الحقيقية — وراقب ورقة المواصفات، لأن أسعار ذاكرة الخوادم الافتراضية الخاصة كانت ترتفع طوال العام.
الخطوة 1: ثبّت Docker واسحب الحزمة
على خادم افتراضي خاص جديد يعمل بـUbuntu، ثبّت محرّك Docker وإضافة Compose، ثم احصل على الحزمة الرسمية باستنساخ سطحي (لست بحاجة لتاريخ المستودع كاملًا):
git clone --depth 1 https://github.com/supabase/supabase
mkdir supabase-project
cp -rf supabase/docker/* supabase-project
cp supabase/docker/.env.example supabase-project/.env
cd supabase-project
docker compose pull
يمنحك هذا ملف .env يتحكم في النشر بأكمله وتعريف Compose لـPostgres وGoTrue (Auth) وPostgREST وRealtime وStorage وبوابة Kong API وStudio.
الخطوة 2: غيّر الأسرار التي تهمّ (لا تتخطَّ هذا)
هذه هي الخطوة التي تحوّل الاستضافة الذاتية إلى اختراق. دليل Docker الرسمي صريح: "لا تبدأ أبدًا Supabase المستضاف ذاتيًا باستخدام هذه الإعدادات الافتراضية". قبل أن تقلع أي شيء، عدّل .env وأعد توليد:
POSTGRES_PASSWORD— كلمة مرور المستخدم الخارق لقاعدة بياناتك. استخدم أحرفًا وأرقامًا فقط لتفادي أخطاء ترميز URL.JWT_SECRETبالإضافة إلىANON_KEYو**SERVICE_ROLE_KEY** جديدين — فهذه توقّع وتفوّض كل رمز واجهة برمجة تطبيقات. ولّدها باستخدام المساعد المرفقutils/generate-keys.sh؛ ولا تعِد استخدام القيم المثالية، فهي عامة على GitHub.DASHBOARD_USERNAMEو**DASHBOARD_PASSWORD** — تسجيل دخول المصادقة الأساسية على Studio. يجب أن تحتوي كلمة المرور على حرف واحد على الأقل.
لماذا هذا غير قابل للتفاوض: مفتاح anon الذي تضمّنه في كود العميل آمن فقط لأن أمان الصفوف يقف خلفه. وأمان الصفوف اختياري التفعيل، وليس افتراضيًا. في 2025، كشفت الثغرة CVE-2025-48757 أكثر من 170 تطبيقًا مولَّدًا بـLovable تحديدًا لأن أمان الصفوف لم يُفعَّل أبدًا، وتؤكّد مراجعة Supabase الأمنية لعام 2025 أن أمان الصفوف، رغم قوته، معقّد للمطوّرين الجدد على النمط وأن الأمان على مستوى التطبيق يبقى مسؤولية العميل. والاستضافة الذاتية تسلّمك تلك المسؤولية مباشرةً: أطلِق بمفاتيح افتراضية أو بلا أمان صفوف، وأنت تنشر قاعدة بياناتك على الإنترنت. فعّل أمان الصفوف لكل جدول يحتوي بيانات حقيقية.
الخطوة 3: أقلِعها وسجّل الدخول
من دليل المشروع:
sh run.sh start
يغلّف هذا docker compose up -d --wait، الذي يرفع كل حاوية حتى تبلّغ عن صحّتها. وحالما تصبح خضراء، تكون لوحة التحكم متاحة عبر بوابة Kong API على المنفذ 8000:
http://<your-server-ip>:8000
سجّل الدخول ببيانات لوحة التحكم التي ضبطتها. لديك الآن مشروع Supabase يعمل — لكنه يتحدث HTTP عاديًا على منفذ عام، وهو ما لا بأس به لعشر دقائق وغير مقبول للإنتاج.
الخطوة 4: HTTPS وجدار حماية محكم
شيئان يجعلان كشف هذا آمنًا:
- وكيل عكسي مع TLS. ضع Caddy أو Nginx أمام المنفذ 8000 وأنهِ HTTPS هناك. وCaddy هو الاختصار — وجّه ملف Caddyfile من سطرين إلى نطاقك وسيوفّر شهادات Let's Encrypt ويجدّدها تلقائيًا.
- ضع جدار حماية على البقية. أغلق كل شيء ما عدا 80/443 (ومنفذ SSH لديك). والأهم، لا تكشف Postgres (5432) للعالم. تحذّر الوثائق من أن كشف Postgres مباشرةً "يتجاوز تجميع الاتصالات ويكشف قاعدة بياناتك للشبكة" — أبقِها مربوطة بـlocalhost أو شبكة خاصة وصِل إليها عبر المجمّع، مع تقييد أي وصول خارجي على عناوين IP موثوقة فقط.
وإذا كان سبب مغادرتك السحابة هو التحكم بالبيانات، فهذا أيضًا حيث تقرّر وضعية الإخراج لديك — فإبقاء حركة المرور على مزوّد واحد هو أحد أنظف الطرق لـتفادي رسوم الإخراج السحابي المفاجئة.
الخطوة 5: الجزء الذي تتخطّاه الأدلة — النسخ الاحتياطية الآن مهمتك
هذا هو القسم الذي تتركه معظم منشورات "ثبّت Supabase في 15 دقيقة"، وهو الأكثر أهمية. ففي لحظة استضافتك ذاتيًا، تتنازل عن النسخ الاحتياطية المُدارة والاسترداد لنقطة زمنية. لا أحد يأخذ لقطة من أجلك. وSupabase مستضاف ذاتيًا بلا استراتيجية نسخ احتياطي ليس قاعدة بيانات؛ بل حادثة مستقبلية.
إعداد نسخ احتياطي بحدّ أدنى قابل للتطبيق يبدو هكذا:
- عمليات تفريغ منطقية مجدولة. عملية
pg_dumpليلية (أوpg_dumpallللأدوار أيضًا) تُكتب على تخزين خارج الصندوق — متجر كائنات لمزوّد مختلف، لا الخادم الافتراضي نفسه. فالتفريغ الذي يعيش على القرص المحتضر ليس نسخة احتياطية. - أرشفة WAL للاسترداد لنقطة زمنية. إن كان فقدان يوم من البيانات غير مقبول، فكوّن أرشفة مستمرة لسجل الكتابة المسبقة بحيث تستطيع إعادة التشغيل إلى أي لحظة. هذا هو البديل المستضاف ذاتيًا عن منزلق PITR السحابي.
- اختبر الاستعادة. فالنسخة الاحتياطية غير المختبَرة تخمين. استعِد في حاوية مؤقتة مرة شهريًا على الأقل وتأكّد من أن البيانات موجودة فعلًا. فمعظم الناس يكتشفون أن نسخهم الاحتياطية معطوبة فقط حين يحتاجونها.
هذه هي التكلفة الصادقة للاستضافة الذاتية: ليست الإعداد، فهو سهل، بل عمليات اليوم الثاني — الترقيع، والمراقبة، وإثبات أن استعاداتك تعمل. لا شيء منها صعب. كلّه على عاتقك.
هل ينبغي لك الاستضافة الذاتية أصلًا؟ مراجعة لواقع التكلفة
تكون استضافة Supabase ذاتيًا منطقية حين يصدق واحد على الأقل مما يلي:
- التحكم بالبيانات أو الامتثال يفرض بقاء المحادثات على بنية تحتية تملكها.
- التكلفة المتوقّعة على نطاق واسع تهمّ — ففاتورة خادم افتراضي ثابتة تتفوّق على التسعير القائم على الاستخدام حالما تتجاوز الطبقة المجانية وتنمو.
- أنت تشغّل خوادم أصلًا. فإن كان تشغيل Postgres ووكيل عكسي يومًا عاديًا بالنسبة لك، فالعبء هامشي.
وهو القرار الخاطئ حين لا يملك فريقك أي شهية للمناوبة، أو حين تحتاج فعلًا للتفريع والاسترداد لنقطة زمنية المُدار، أو حين يساوي وقتك أكثر من 25–50 دولارًا/شهر تكلفة خطة مُدارة. وإن كنت لا تزال توازن بين المنصّات نفسها، فإن Neon مقابل Supabase وترتيبنا لأفضل Postgres مُدار يغطّيان الجانب المستضاف. وإذا كان دافعك هو الغريزة الأوسع لـ"امتلاك أدواتك"، فهو المنطق نفسه وراء تشغيل مساعد ذكاء اصطناعي مستضاف ذاتيًا مثل OpenClaw.
نحن نستضيف Postgres ذاتيًا لأن التحكم يستحق الضريبة التشغيلية بالنسبة لنا. وتلك الحسابات ليست عالمية. أجرِها لفريقك قبل أن تنسخ حساباتنا.
الأسئلة الشائعة
كم أحتاج من ذاكرة عشوائية لاستضافة Supabase ذاتيًا؟ خطّط لـ8 جيجابايت للإنتاج. تشغّل الحزمة أكثر من اثنتي عشرة حاوية وتجلس في الخمول عند نحو 3–4 جيجابايت قبل أي حركة مرور. و4 جيجابايت تصلح للتطوير لكنها تترك هامشًا ضيقًا.
هل Supabase المستضاف ذاتيًا مجاني؟ البرمجية مجانية ومفتوحة المصدر. أنت تدفع مقابل الخادم الافتراضي والتخزين وبنية النسخ الاحتياطي التي تعدّها بنفسك — عادةً فاتورة خادم شهرية ثابتة بدلًا من تسعير قائم على الاستخدام.
ما الميزات المفقودة في Supabase المستضاف ذاتيًا؟ النسخ الاحتياطية المُدارة والاسترداد لنقطة زمنية، والتفريع، والمشاريع المتعددة في Studio واحد، والتحليلات المتقدمة، وETL، وواجهة برمجة تطبيقات الإدارة. أما قاعدة البيانات الأساسية والمصادقة والتخزين والوقت الفعلي فكلها حاضرة.
هل استضافة Supabase ذاتيًا آمنة؟ يمكن أن تكون كذلك، لكن الأمان على عاتقك كليًا. غيّر كل الأسرار الافتراضية، وفعّل أمان الصفوف على كل جدول، وأنهِ HTTPS عند وكيل عكسي، ولا تكشف Postgres مباشرةً أبدًا. فمعظم اختراقات Supabase العامة تأتي من غياب أمان الصفوف، لا من المحرّك.
كيف أحدّث مثيل Supabase مستضافًا ذاتيًا؟ اسحب أحدث الصور من مستودع Supabase وأعد إنشاء الحاويات، بعد النسخ الاحتياطي أولًا. وقد تتأخّر الإصدارات المستضافة ذاتيًا عن السحابة، فاقرأ سجل التغييرات قبل ترقية صندوق إنتاج.
قد نحصل على عمولة عبر بعض الروابط دون أي تكلفة إضافية عليك.
Waqas Ahmed Waseer
Waqas Ahmed Waseer is a developer and automation builder with 8+ years shipping production systems used by 100k+ people. He builds custom multi-tenant SaaS, AI automation (n8n, LLM workflows, WhatsApp bots) and hosting infrastructure (WHM/cPanel, CloudLinux) — and is the maker of WaSphere, FlowMaticX, and the WaseerHost hosting brand. 100+ projects delivered for SMBs, agencies and funded startups.



