تثبيت إطار العمل جانغو على أوبنتو: دليل شامل وموسع
إطار العمل جانغو (Django) هو أحد أشهر أُطُر العمل لتطوير تطبيقات الويب بلغة بايثون. يتميز جانغو بسرعته، أمانه، ومرونته الكبيرة في بناء مواقع وتطبيقات ويب عالية الجودة. ولهذا، يعتبر جانغو خيارًا مفضلًا للمطورين والمبرمجين الذين يبحثون عن إطار عمل قوي ومتقدم في بيئة البرمجة مفتوحة المصدر. يُعد نظام التشغيل أوبنتو Ubuntu من أكثر توزيعات لينكس استخدامًا وتفضيلًا في بيئات تطوير الويب بسبب سهولة استخدامه ودعمه الواسع لأدوات البرمجة.
في هذا المقال، نقدم دليلاً شاملاً وموسعًا لتثبيت إطار العمل جانغو على نظام أوبنتو، مع شرح تفصيلي لكل خطوة لضمان نجاح التثبيت والتشغيل في بيئة التطوير أو الإنتاج.
مقدمة عن جانغو وأهميته في تطوير الويب
جانغو هو إطار عمل مفتوح المصدر مبني بلغة بايثون، تم تصميمه ليُسهّل على المطورين بناء تطبيقات ويب سريعة وقابلة للتطوير. يعتمد جانغو على مفهوم “البرمجة النظيفة” و”إعادة الاستخدام”، مما يتيح إنشاء تطبيقات متكاملة دون الحاجة إلى كتابة الكثير من الأكواد المتكررة.
كما يتميز جانغو بنظام إدارة قواعد بيانات قوي (ORM)، نظام توجيه URL مرن، دعم شامل لنماذج المستخدمين والتوثيق، بالإضافة إلى مكتبة ضخمة من الأدوات والمكونات الجاهزة التي تساعد في تسريع عملية التطوير.
متطلبات تثبيت جانغو على أوبنتو
قبل البدء في عملية التثبيت، لا بد من التأكد من توفر عدة متطلبات أساسية:
-
نظام أوبنتو محدث (يفضل إصدار 20.04 LTS أو أحدث).
-
اتصال بالإنترنت لتحميل الحزم والتحديثات.
-
صلاحيات المستخدم الإداري (sudo).
-
تثبيت لغة البرمجة بايثون (يفضل Python 3.8 أو أحدث).
-
بيئة افتراضية لعزل حزم بايثون (يوصى باستخدام
venv). -
أدوات تثبيت الحزم (مثل pip).
الخطوة الأولى: تحديث النظام
ينصح دائمًا ببدء التثبيت بتحديث نظام أوبنتو، لضمان حصول النظام على أحدث الحزم والتحديثات الأمنية، وكذلك لتفادي تعارضات محتملة أثناء التثبيت.
bashsudo apt update sudo apt upgrade -y
يقوم الأمر الأول بتحديث قائمة الحزم المتوفرة، بينما يقوم الثاني بتحديث الحزم المثبتة إلى أحدث نسخة.
الخطوة الثانية: تثبيت بايثون وأدوات التطوير
جانغو يعتمد بشكل كامل على لغة بايثون، لذلك يجب التأكد من تثبيت إصدار حديث من بايثون.
لتثبيت بايثون 3 وأدوات التطوير المرتبطة:
bashsudo apt install python3 python3-pip python3-venv -y
-
python3هو المترجم الأساسي للغة بايثون. -
python3-pipهو مدير الحزم الخاص ببايثون. -
python3-venvلإنشاء بيئة افتراضية لعزل الحزم الخاصة بالمشروع.
يمكن التحقق من الإصدار المثبت باستخدام الأمر:
bashpython3 --version
الخطوة الثالثة: إنشاء بيئة افتراضية
توصي ممارسات التطوير الحديثة باستخدام بيئات افتراضية لعزل مشاريع البرمجة عن النظام الرئيسي، مما يسهل إدارة الحزم وتجنب التعارضات.
لإنشاء بيئة افتراضية جديدة باسم myenv:
bashpython3 -m venv myenv
لتفعيل البيئة الافتراضية:
bashsource myenv/bin/activate
بعد التفعيل، سيظهر اسم البيئة الافتراضية في موجه الأوامر، وهذا يعني أنك تعمل داخل البيئة المعزولة.
الخطوة الرابعة: تثبيت جانغو باستخدام pip
مع تفعيل البيئة الافتراضية، يصبح بإمكاننا تثبيت جانغو باستخدام pip، وهو أداة إدارة الحزم الخاصة ببايثون.
لتثبيت آخر إصدار مستقر من جانغو:
bashpip install django
يمكن التحقق من نجاح التثبيت من خلال عرض نسخة جانغو المثبتة:
bashdjango-admin --version
الخطوة الخامسة: إنشاء مشروع جانغو جديد
بعد تثبيت جانغو، يمكن البدء بإنشاء مشروع جديد. يستخدم جانغو أداة django-admin لإنشاء مشروع هيكلي يحتوي على جميع الملفات الضرورية.
لإنشاء مشروع باسم myproject:
bashdjango-admin startproject myproject
سوف ينشئ هذا الأمر مجلدًا يحتوي على الملفات التالية:
-
manage.py: أداة لإدارة المشروع. -
مجلد
myproject/يحتوي على إعدادات المشروع وملفات التهيئة.
الخطوة السادسة: تشغيل الخادم المحلي لمشروع جانغو
للتأكد من أن جانغو يعمل بشكل صحيح، يمكن تشغيل الخادم المحلي المدمج وتجربة الوصول إلى التطبيق عبر المتصفح.
أولًا، الانتقال إلى مجلد المشروع:
bashcd myproject
ثم تشغيل الخادم المحلي:
bashpython manage.py runserver
بشكل افتراضي، يعمل الخادم على العنوان: http://127.0.0.1:8000/
يمكن فتح المتصفح وكتابة العنوان السابق لرؤية صفحة البداية الافتراضية لجانغو.
الخطوة السابعة: تثبيت قواعد بيانات إضافية (اختياري)
جانغو يدعم العديد من قواعد البيانات مثل SQLite (المدمجة بشكل افتراضي)، MySQL، PostgreSQL، وغيرها. إذا كنت تخطط لاستخدام قاعدة بيانات خارج SQLite، فيجب تثبيت المكتبات الخاصة بها.
تثبيت PostgreSQL مع دعم جانغو
bashsudo apt install postgresql postgresql-contrib libpq-dev -y pip install psycopg2-binary
تثبيت MySQL مع دعم جانغو
bashsudo apt install mysql-server libmysqlclient-dev -y pip install mysqlclient
بعد التثبيت، يتم تعديل إعدادات قاعدة البيانات في ملف settings.py الخاص بالمشروع لتوجيه جانغو إلى قاعدة البيانات المناسبة.
الخطوة الثامنة: إدارة الحزم والاعتماديات باستخدام ملف requirements.txt
لإدارة الحزم الخاصة بالمشروع وتسهيل تثبيتها لاحقًا، يُنصح بإنشاء ملف requirements.txt يحتوي على قائمة الحزم مع إصداراتها.
لحفظ الحزم المثبتة حاليًا:
bashpip freeze > requirements.txt
لتثبيت الحزم من الملف:
bashpip install -r requirements.txt
الخطوة التاسعة: التعامل مع الإعدادات الأمنية لجانغو
للحفاظ على أمان المشروع، يجب ضبط بعض الإعدادات في ملف settings.py:
-
تعيين متغير
SECRET_KEYبقيمة سرية. -
ضبط متغير
DEBUGإلىFalseعند الانتقال لبيئة الإنتاج. -
تحديد قائمة
ALLOWED_HOSTSلإضافة أسماء النطاقات أو عناوين الـ IP المسموح بها.
الخطوة العاشرة: نشر مشروع جانغو على أوبنتو
بعد التطوير المحلي، قد يرغب المطور في نشر التطبيق على خادم يعمل بنظام أوبنتو. من أفضل الممارسات استخدام خادم ويب مثل Nginx مع واجهة WSGI (مثل Gunicorn) لتشغيل تطبيقات جانغو في بيئة الإنتاج.
تثبيت Gunicorn
داخل البيئة الافتراضية:
bashpip install gunicorn
تشغيل التطبيق باستخدام Gunicorn
bashgunicorn myproject.wsgi
إعداد Nginx لخدمة التطبيق
-
تثبيت Nginx:
bashsudo apt install nginx -y
-
إعداد ملف تكوين خاص بالمشروع داخل
/etc/nginx/sites-available/. -
تفعيل الموقع وإعادة تشغيل Nginx.
جدول توضيحي لأوامر التثبيت الرئيسية
| الخطوة | الأمر | الوصف |
|---|---|---|
| تحديث النظام | sudo apt update && sudo apt upgrade -y |
تحديث الحزم المثبتة |
| تثبيت بايثون وأدواته | sudo apt install python3 python3-pip python3-venv -y |
تثبيت بايثون وأدوات التطوير |
| إنشاء بيئة افتراضية | python3 -m venv myenv |
إنشاء بيئة معزولة |
| تفعيل البيئة الافتراضية | source myenv/bin/activate |
تفعيل البيئة |
| تثبيت جانغو | pip install django |
تثبيت جانغو |
| إنشاء مشروع جديد | django-admin startproject myproject |
إنشاء مشروع جانغو جديد |
| تشغيل الخادم المحلي | python manage.py runserver |
تشغيل الخادم محليًا |
| تثبيت PostgreSQL | sudo apt install postgresql postgresql-contrib libpq-dev -ypip install psycopg2-binary |
تثبيت ودعم قاعدة بيانات PostgreSQL |
| تثبيت MySQL | sudo apt install mysql-server libmysqlclient-dev -ypip install mysqlclient |
تثبيت ودعم قاعدة بيانات MySQL |
| تثبيت Gunicorn | pip install gunicorn |
خادم WSGI لتشغيل جانغو في الإنتاج |
| تثبيت Nginx | sudo apt install nginx -y |
خادم ويب عكسي |
توصيات وملاحظات هامة
-
استخدام البيئة الافتراضية: يفضل دائمًا تثبيت جانغو وكل المكتبات في بيئة افتراضية لتجنب التعارض مع مكتبات النظام أو مشاريع أخرى.
-
حماية ملف SECRET_KEY: لا ينبغي مشاركة المفتاح السري
SECRET_KEYعلى مواقع عامة أو ضمن ملفات التحكم بالإصدار مثل Git. -
تحديث جانغو بانتظام: الحرص على تحديث جانغو باستمرار لضمان حصول المشروع على آخر التحديثات الأمنية وتحسينات الأداء.
-
النسخ الاحتياطي المنتظم: في المشاريع التي تعتمد قواعد بيانات خارجية، ضرورة إجراء نسخ احتياطية دورية.
-
الاستفادة من التوثيق الرسمي: موقع جانغو الرسمي يحتوي على دليل مفصل وشامل يساعد على استكشاف جميع ميزات الإطار واستخدامها بشكل صحيح.
المصادر والمراجع
بتطبيق الخطوات السابقة بعناية، يمكن لأي مطور أو مهندس برمجيات إعداد بيئة عمل جانغو متكاملة على نظام أوبنتو، مما يتيح بدء تطوير تطبيقات ويب قوية، آمنة، وقابلة للتوسع بسهولة وفعالية.

