تثبيت Supabase على سيرفر Linux - أطلق منصة الباك إند مفتوحة المصدر الخاصة بك
المنتجات المثالية لهذا الدليل
ابدأ على الفور — اطلب المنتج المناسب واتبع هذا الدليل خطوة بخطوة.
مقدمة
Supabase هي منصة تطوير Postgres مفتوحة المصدر توفر قاعدة بيانات Postgres كاملة بالإضافة إلى المصادقة، وواجهات برمجة تطبيقات فورية، والميزات اللحظية، والتخزين، مما يجعلها بديل مفتوح المصدر لـ Firebase.
تفكر في استضافة هذه الخدمة بنفسك؟ سنرشدك خلال كل خطوة لكيفية إعدادها وتكوينها، مع كل ما تحتاج لمعرفته للحفاظ على سير العمل بسلاسة.
تثبيت Supabase باستخدام مثبت التطبيقات بنقرة واحدة
يمكنك تثبيت Supabase مباشرة عبر مثبت التطبيقات بنقرة واحدة في واجهة الويب الخاصة بـ VPS. بعد إكمال إعداد التطبيقات الأولي، افتح كتالوج التطبيقات، وابحث عن Supabase، وابدأ النشر مع إعدادات المشروع، والبيئة، والنطاق المفضلة لديك. هذا يمنحك طريقة سريعة وسهلة لنشر وإدارة Supabase بدون إعداد يدوي عبر سطر الأوامر، مع الاستفادة من الإدارة المتكاملة عبر الويب، ودعم النطاق المخصص، وتوفير SSL حيثما كان متاحًا.
المتطلبات الأساسية
قبل تثبيت Supabase، تأكد من أن بيئة الاستضافة الخاصة بك تلبي المتطلبات التالية لضمان تثبيت سلس وأداء مثالي.
| العتاد | الحد الأدنى | توصية ZAP-Hosting |
|---|---|---|
| CPU | 1 نواة vCPU | 4 أنوية vCPU |
| RAM | 4 جيجابايت | 8 جيجابايت |
| مساحة القرص | 25 جيجابايت | 25 جيجابايت |
يتطلب البرنامج تثبيت جميع التبعيات اللازمة وأن يعمل على نظام تشغيل مدعوم. تأكد من أن سيرفرك يفي بالمتطلبات التالية قبل المتابعة بالتثبيت:
التبعيات: Git، Docker (Engine و Compose)
نظام التشغيل: أحدث إصدار من Ubuntu/Debian يدعم Docker 2
تأكد من تثبيت جميع التبعيات واستخدام إصدار نظام التشغيل الصحيح لتجنب مشاكل التوافق أثناء تثبيت Supabase.
التحضير
قبل إعداد Supabase، تحتاج إلى تحضير نظامك. يشمل ذلك تحديث نظام التشغيل إلى أحدث إصدار وتثبيت جميع التبعيات المطلوبة. هذه التحضيرات تضمن بيئة مستقرة وتساعد في منع المشاكل أثناء أو بعد التثبيت.
تحديث النظام
للتأكد من أن نظامك يعمل بأحدث البرامج وتحسينات الأمان، يجب عليك دائمًا تنفيذ تحديثات النظام أولاً. للقيام بذلك، نفذ الأمر التالي:
sudo apt update && sudo apt upgrade -y
هذا يضمن أن نظامك يحتوي على أحدث تصحيحات الأمان وإصدارات البرامج قبل المتابعة.
تثبيت التبعيات
بمجرد الانتهاء من عملية التحديث، يمكن الآن متابعة تثبيت التبعيات.
Git
سيتم تنزيل بيانات Supabase عبر GitHub. يتطلب هذا تثبيت Git أولاً. لتنفيذه، استخدم الأمر التالي:
sudo apt install git-all
Docker
سيتم نشر وتشغيل Supabase على جهازك باستخدام حاوية Docker. يتطلب هذا تثبيت Docker أولاً. لتنفيذه، استخدم الأمر التالي:
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
دليل كامل لعملية التثبيت وكيفية استخدام Docker متوفر في دليلنا الخاص بـ Docker.
التثبيت
الآن بعد أن تم استيفاء جميع المتطلبات واكتمال التحضيرات اللازمة، يمكنك المتابعة بتثبيت تطبيق Supabase.
قم بجلب مستودع Supabase، وأنشئ مجلد مشروع مخصص، وانسخ ملفات Docker وملف البيئة النموذجي إليه.
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
docker compose up -d
يمكنك الآن الوصول إلى Supabase Studio عبر http://<عنوان-IP-الخاصة-بك>:8000. سيُطلب منك اسم مستخدم وكلمة مرور. بشكل افتراضي، بيانات الاعتماد هي:
- اسم المستخدم:
supabase - كلمة المرور:
this_password_is_insecure_and_should_be_updated
تطبيقك يعمل الآن ببيانات اعتماد افتراضية. قم بتأمين خدماتك في أقرب وقت ممكن باستخدام التعليمات أدناه.
التكوين
لا يجب أبدًا النشر باستخدام القيم الافتراضية أو القيم النموذجية. يجب استبدال جميع العناصر النائبة بأسرار قوية وفريدة، ومراجعة التكوين وفقًا لمتطلبات الأمان الخاصة بك، وإعادة تشغيل جميع الخدمات لتطبيق التغييرات.
قم بإنشاء مفاتيح API آمنة قبل تعريض أي خدمة. ابدأ باختيار سر JWT مكون من 40 حرفًا. يمكنك استخدام القيمة المقدمة أو إنشاء سر خاص بك. خزّن هذا السر محليًا في مكان آمن. لا تشاركه ولا ترفعه إلى نظام التحكم في الإصدارات. استخدم السر لإنشاء JWT ثم استخرج مفاتيح API للـ anon والخدمة باستخدام النموذج المشار إليه في وثائق Supabase: https://supabase.com/docs/guides/self-hosting/docker#generate-api-keys
شغّل النموذج مرتين لإنتاج كلا المفتاحين. حدّث ملف ./docker/.env بـ:
ANON_KEY: مفتاح anonSERVICE_ROLE_KEY: مفتاح الخدمة
حدّث الأسرار المطلوبة في ./docker/.env. يجب تعيين هذه القيم لنشر يعمل بشكل صحيح:
POSTGRES_PASSWORD: كلمة مرور دورpostgresJWT_SECRET: يستخدمها PostgREST و GoTrueSITE_URL: عنوان URL الأساسي لموقعكSMTP_*: بيانات اعتماد خادم البريدPOOLER_TENANT_ID: معرف المستأجر المستخدم من قبل Supavisor pooler
قم بحماية لوحة المعلومات ببيانات اعتماد جديدة قبل الاستخدام في الإنتاج. حرر ./docker/.env:
DASHBOARD_USERNAME: مستخدم لوحة المعلوماتDASHBOARD_PASSWORD: كلمة مرور لوحة المعلومات
يمكنك تعريف عدة مستخدمين للوحة المعلومات في ./docker/volumes/api/kong.yml:
basicauth_credentials:
- consumer: DASHBOARD
username: user_one
password: password_one
- consumer: DASHBOARD
username: user_two
password: password_two
لتمكين جميع ميزات لوحة المعلومات خارج localhost، عيّن SUPABASE_PUBLIC_URL في ./docker/.env إلى عنوان URL أو IP الذي ستستخدمه للوصول إلى اللوحة.
طبق تغييرات التكوين بإعادة تشغيل الحزمة:
docker compose down
docker compose up -d
الخاتمة والمزيد من الموارد
تهانينا! لقد قمت الآن بتثبيت وتكوين Supabase بنجاح على VPS/سيرفر مخصص الخاص بك. نوصي أيضًا بإلقاء نظرة على الموارد التالية، التي قد توفر لك مساعدة إضافية وإرشادات خلال عملية تكوين سيرفرك.
- Supabase.com - الموقع الرسمي
- Supabase.com/docs/guides/self-hosting - وثائق Supabase
هل لديك أسئلة محددة غير مغطاة هنا؟ لأي استفسارات أو مساعدة إضافية، لا تتردد في التواصل مع فريق الدعم الخاص بنا، المتوفر يوميًا لمساعدتك! 🙂