1. SSH إلى الخادم الخاص بك
ssh root@<server-ip>
2. ابحث عن بيانات اعتماد تسجيل الدخول
- المستخدم الافتراضي:
django - كلمة المرور المخزنة في:
/root/.cloudzy-creds
(اختياري) قم بتغيير كلمة المرور الافتراضية: passwd django
3. قم بالتبديل إلى مستخدم التطبيق
su - django
4. بوستجري إس كيو إل (اختياري)
إذا تم تثبيت 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.
5. انشر تطبيقك
نموذج تطبيق 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 - إعادة تشغيل إنجينكس:
sudo systemctl restart nginx
6. الوصول إلى التطبيق الخاص بك
تطبيق Django الخاص بك متاح على: http://<server-ip
يقوم Nginx بإجراء طلبات عكسية إلى Gunicorn عبر مقبس Unix.
7. تغيير المنفذ أو المجال؟
لضبط المجال أو المنفذ أو إضافة SSL:
- تحرير تكوين موقع Nginx:
sudo nano /etc/nginx/sites-available/gunicorn_django - تكوين الاختبار:
sudo nginx -t - إعادة تحميل إنجينكس:
sudo systemctl restart nginx
8. تمكين HTTPS (اختياري)
استخدم Certbot لتمكين HTTPS.
تثبيت سيرتبوت:
sudo apt install certbot python3-certbot-nginx -y
احصل على الشهادات وقم بتحديث Nginx تلقائيًا:
sudo certbot --nginx -d example.com
امتحان:
nginx -t && sudo systemctl reload nginx