١. الاتصال بالخادم عبر SSH
ssh root@<server-ip>
٢. الحصول على بيانات تسجيل الدخول
- المستخدم الافتراضي:
django - كلمة المرور مخزنة في:
/root/.cloudzy-creds
(اختياري) تغيير كلمة المرور الافتراضية: passwd django
٣. التبديل إلى مستخدم التطبيق
su - django
٤. PostgreSQL (اختياري)
إذا كانت PostgreSQL مثبتة، أنشئ قاعدة البيانات والمستخدم (مثال):
sudo -u postgres psql
CREATE DATABASE <db>;
CREATE USER <user> WITH PASSWORD <password>;
GRANT ALL PRIVILEGES ON DATABASE <db> TO <user>;
q
ثم حدّث settings.py DATABASES بالمضيف localhostواسم قاعدة البيانات والمستخدم وكلمة المرور. ثم نفّذ python manage.py migrate.
٥. نشر تطبيقك
يعمل تطبيق Flask التجريبي بالفعل ويمكن الوصول إليه على: http://<server-ip
لنشر تطبيقك الخاص:
- انتقل إلى مجلد تطبيقك (أو استنسخ مشروعاً جديداً):
cd~/django_app - (اختياري) استبدال التطبيق الافتراضي:
gitclone<your_repo_url> . - تفعيل البيئة الافتراضية:
sourcevenv/bin/activate - تثبيت الحزم المطلوبة:
pip install -r requirements.txt - عدّل
settings.py: عيّنALLOWED_HOSTSإلى نطاقك/عنوان IP الخاص بك وتأكد من وجودSTATIC_ROOT. - ترحيل قاعدة البيانات:
python manage.py migrate - تجميع الملفات الثابتة في
STATIC_ROOT:python manage.py collectstatic --noinput - أعد تشغيل Gunicorn لتطبيق التغييرات:
sudo systemctl restart gunicorn - إعادة تشغيل NGINX:
sudo systemctl restart nginx
٦. الوصول إلى تطبيقك
تطبيق Django متاح على: http://<server-ip
يعمل Nginx كوسيط عكسي يوجّه الطلبات إلى Gunicorn عبر Unix socket.
٧. تغيير المنفذ أو النطاق؟
لتعديل النطاق أو المنفذ أو إضافة SSL:
- عدّل ملف إعداد موقع Nginx:
sudo nano /etc/nginx/sites-available/gunicorn_django - اختبر الإعداد:
sudo nginx -t - أعد تحميل Nginx:
sudo systemctl restart nginx
٨. تفعيل HTTPS (اختياري)
استخدم Certbot لتفعيل HTTPS.
ثبّت certbot:
sudo apt install certbot python3-certbot-nginx -y
احصل على الشهادات وحدّث Nginx تلقائياً:
sudo certbot --nginx -d example.com
الاختبار (Test):
nginx -t && sudo systemctl reload nginx