تخطّ إلى المحتوى
AISI
𝕏
دليل إرشادي

نشر تطبيق Flask على Coolify: من repo Git إلى HTTPS في 15 دقيقة

دليل خطوة بخطوة لنشر تطبيق Flask (Python) على Coolify عبر Nixpacks، مع PostgreSQL، متغيرات بيئية، نشر تلقائي من Git، وHTTPS تلقائي.

6 دقائق قراءة developmentInfrastructure

أهمية الاستضافة السريعة للمطورين

بالنسبة للمطورين الذين يعملون على إطارات عمل بايثون مثل Flask، فإن الانتقال من بيئة التطوير المحلية (Localhost) إلى بيئة الإنتاج المباشرة قد يكون محفوفاً بالتعقيدات التقنية (إعداد خوادم Nginx، وتكوين شهادات SSL). هنا يأتي دور Coolify كأداة مجانية مفتوحة المصدر (بديل لـ Heroku)، تتيح لك نشر تطبيقاتك مباشرة من مستودعات Git بخطوات بسيطة.

ما ستحتاجه قبل البدء

  • خادم افتراضي مثبت عليه Coolify مسبقاً.
  • مستودع (Repository) على GitHub يحتوي على تطبيق Flask الخاص بك مع ملف requirements.txt ويفضل ملف Procfile.
  • نطاق (Domain) أو نطاق فرعي (Subdomain) مسجل وموجه (A Record) إلى IP الخادم الخاص بك.

خطوات النشر (Deployment) في 15 دقيقة

1. ربط مستودع GitHub

افتح لوحة تحكم Coolify واذهب إلى New Resource ثم اختر Application.

  • اختر مصدر الكود الخاص بك (GitHub, GitLab, أو مستودع عام).
  • إذا كان المستودع خاصاً (Private)، سيطلب منك Coolify تثبيت تطبيق GitHub الخاص به لإعطائه الصلاحيات اللازمة لقراءة الكود.
  • اختر المستودع والفرع (Branch) الذي تود نشره (غالباً main).

2. إعداد بيئة بناء Nixpacks

بدلاً من كتابة ملف Dockerfile معقد، يستخدم Coolify تقنية Nixpacks التي تتعرف تلقائياً على لغة البرمجة.

  • بمجرد اختيار المستودع، سيتعرف Coolify على وجود requirements.txt ويعتبره تطبيق Python.
  • في إعدادات البناء (Build Settings)، تأكد من أن أمر التشغيل الأساسي (Start Command) مضبوط بشكل صحيح. لتطبيقات Flask الموجهة للإنتاج، يُنصح باستخدام gunicorn. مثلاً: gunicorn app:app -b 0.0.0.0:8000.

3. إعداد المتغيرات البيئية (Environment Variables)

تطبيقات Flask تحتاج عادة لمتغيرات بيئة مخفية (مثل مفاتيح الـ API أو تفاصيل الاتصال بقاعدة البيانات):

  • انتقل إلى تبويب Environment Variables في لوحة تحكم تطبيقك على Coolify.
  • أضف المتغيرات اللازمة. لا تنسَ تعيين FLASK_ENV=production لضمان توقف وضع التنقيح (Debug mode).

4. إعداد النطاق وتفعيل SSL

الخطوة الأهم لجعل تطبيقك متاحاً بشكل آمن:

  • في إعدادات التطبيق، ابحث عن حقل (Domains).
  • أدخل النطاق الخاص بك (مثلاً: https://api.myproject.com). ملاحظة: كتابة https:// ستخبر Coolify تلقائياً بطلب شهادة أمان (Let’s Encrypt).
  • تأكد من أن المنفذ الداخلي (Port) مضبوط على نفس المنفذ الذي حددته في أمر gunicorn (وهو 8000 في حالتنا).

5. إطلاق التطبيق (Deploy)

الآن اضغط على زر Deploy الكبير. ستبدأ واجهة Coolify بعرض سجلات البناء (Build Logs). سيقوم النظام بتنزيل كود بايثون، تثبيت المكتبات من requirements.txt، إعداد خادم الويب الداخلي، وإصدار شهادة SSL.

الخلاصة

خلال دقائق، استطعت تحويل كود Flask محلي إلى تطبيق حي موثوق بشهادة SSL جاهز للعمل. بفضل Coolify، يحصل المطورون على راحة منصات البلاتفورم كخدمة (PaaS) مع احتفاظهم بالسيادة التامة على بياناتهم وخوادمهم الخاصة.