Hostwinds دروس

نتائج البحث عن:


جدول المحتويات


سوف تحتاج إلى ما يلي للبدء:
سوف نستخدم:
إنشاء مستخدم
تثبيت وإعداد Django
تكوين uWSGI
تكوين خدمة النظام
تكوين NGINX
خاتمة

كيفية تشغيل أطر عمل Python Web (أوبونتو 18.04)

العلامات: Ubuntu 

سوف تحتاج إلى ما يلي للبدء:
سوف نستخدم:
إنشاء مستخدم
تثبيت وإعداد Django
تكوين uWSGI
تكوين خدمة النظام
تكوين NGINX
خاتمة

بيثون هي لغة شعبية لبعض مطوري الويب. لديها أطر مثل القارورة و django التي يمكن أن تسرع في وضع تطوير الويب الخلفي. سيستمر هذا الدليل كيفية الحصول على إطار DJango وتشغيله على خادم VPSSWinds الذي يتم تقديمه عبر الإنترنت.

سوف تحتاج إلى ما يلي للبدء:

  • Hostwinds Linux Cloud VPS Server
  • وصول SSH
  • أوبونتو 18.04.2018
  • اسم المجال الذي يشير إلى الخادم الخاص بك

سوف نستخدم:

  • NGINX Web Server
  • إطار Django Python
  • تعمل uWSGI كواجهة بين الاثنين.

إنشاء مستخدم

لا تحتاج معظم الخدمات على نظامك إلى تشغيلها كجذر، ولأسباب أمنية، سنقوم بإعداد مستخدم غير جذر لتشغيل بقية الأوامر في هذا الدليل.يمكنك الاتصال بهذا المستخدم أي شيء.هنا، أخلق مستخدم يسمى "المستخدم":

adduser user

يجب ذلك بعد ذلك مطالبة كلمة مرور لهذا المستخدم الجديد، وإنشاء كلمة مرور يمكنك تذكرها، وجعلها من الصعب تخمين الآخرين.كما ستطلب أيضا بعض المعلومات الإضافية، ولكن لا ينبغي أن تؤثر على أي شيء إذا تركت كل هذه الحقول فارغة.الآن، نريد هذا المستخدم تشغيل بعض أوامر الجذر، لذلك بالنسبة ل "مستخدم"، سأضيفها إلى مجموعة تسمى "Sudo".

usermod -aG sudo user

سيمكن هذا للمستخدمين من بادئة أوامرهم ب "Sudo" لتشغيل الأوامر المحمية بشكل طبيعي بواسطة الجذر باستخدام كلمة مرور المستخدم.

الآن، استخدم الأمر "إنهاء"، وتسجيل الدخول مرة أخرى إلى الخادم باستخدام SSH كمستخدم قمت بإعداده.بالنسبة للمستخدم الذي نستعد للتو، ستكون اسم المستخدم "مستخدم"، وستكون كلمة المرور هي التي قمت بتعيينها عند تشغيل الأمر ALDUSER.

تثبيت وإعداد Django

لاستخدام Django، ستحتاج إلى إعداد بيئة بيثون.ابدأ باستخدام هذه الأوامر لتحديث البرنامج الخاص بك إلى أحدث إصدار:

sudo apt update && sudo apt upgrade

الآن، سنحتاج إلى بعض البرامج على مستوى النظام. لحسن الحظ، كل ما نحتاج إليه متاحا من مستودعات Ubuntu ويمكن تثبيته مع Apt-Get.

sudo apt-get install python3-pip nginx

مع تثبيت البرنامج على مستوى النظام ، يمكننا بناء بيئة Django الخاصة. يركض:

mkdir public_html
cd public_html
python3 -m venv django_serve

سيؤدي ذلك إلى إنشاء مجلد يسمى Django_serve مع بعض الأشياء فيه. يحتوي على إصداره الخاص من Python، وعندما نقوم بتنشيط الملف المصدر، ستذهب البرامج المثبتة مع PIP في هذا الدليل بدلا من على مستوى النظام. الخطوة التالية هي تنشيط ملف Python الخاص وتثبيت Django.

source django-serve/bin/activate

الآن ، يمكننا تثبيت Django وبدء مشروع Django باستخدام الأوامر:

pip install django
django-admin startproject my_site

للسماح لخادم الويب الخاص بنا بالوصول إلى Django، نحتاج إلى إضافة المجال إلى المضيفين المسموح بهم. يمكنك كتابة ملف أو تحرير ملف على سطر الأوامر باستخدام محرر نصوص سطر الأوامر. كثير متاحون على لينكس، وسوف نستخدم نانو في هذا الدليل.

باستخدام NANO، قم بتحرير إعدادات الملفات. في الدليل MySite مثل

nano mysite/settings.py

مرة واحدة في الملف، ابحث عن الخط الذي يقرأ: يسمح_HOSTS = [].

في الأقواس، أضف اسم نطاق موقعك مع علامات اقتباس مثل ذلك:

ALLOWED_HOSTS = ['yourdomain.com', 'www.yourdomain.com']

الضغط على التحكم-X يخرج نانو عندما يطلب منك حفظ، اضغط على "Y".

يمكنك استخدام الأمر إلغاء تنشيط للعودة إلى Shell العادية.

مع إنشاء موقع جديد ، يمكننا تحويل انتباهنا إلى إعداد uWSGI.

تكوين uWSGI

UWSGI هو برنامج بروتوكول يتصل بين رمز Python وبرنامج WebServer. بالنسبة للبساطة، سنستخدم مضيفنا مثيل UWSGI واحد فقط. سنقوم بإعداد ملف التكوين لمشروعنا وإنشاء خدمة SYSTEMD لتشغيله في الخلفية.

للبدء ، نحتاج إلى كتابة ملف لتهيئة uWSGI.

مرة أخرى ، سنستخدم nano لكتابة ملف:

nano mysite.ini

هذا ملف INI مجردة لنبدأ:

#/home/user/public_html/mysite.ini
[uwsgi]
socket = 127.0.0.1:10080
chdir = /home/$USER/public_html/my_site
module = my_site.wsgi:application
processes = 4
threads = 2

يستعاض عن مستخدم $ أعلاه باستخدام اسم المستخدم الذي تستخدمه و My_Site باسم النطاق الخاص بك.

تكوين خدمة النظام

بمجرد إعداد UWSGI، نحتاج إلى الحصول على Linux لتشغيله تلقائيا في الخلفية.تمكنت معظم توزيعات Linux الحديثة من هذا البرنامج SYSTEMD.ستحتاج إلى إنشاء ما يسمى "ملف الخدمة" ل SystemD لتكون قادرا على إدارة UWSGI.

سنتصل ملفنا My_Site.Service.لفتحه وإعداد الخدمة، تشغيل:

sudo nano /etc/system/systemd/my_site.service
#/etc/system/systemd/my_site.service
#Tells Systemd about your site
[Unit]
Description=Guide test site.
After=network.target

#Where systemd should start it from.
[Service]
User=$USER
Group=www-data
WorkingDirectory=/home/user/public_html/my_site
Environment="PATH=/home/user/django_serve/bin"
ExecStart=/home/user/public_html/django_serve/bin/uwsgi my_site.ini

#For starting the service at boot.
[Install]
WantedBy=multi-user.target

يستعاض عن مستخدم $ أعلاه باستخدام اسم المستخدم الذي تعمل به و my_site باسم النطاق الخاص بك.

تكوين NGINX

أخيرا، نحتاج إلى إعداد Nginx للاستماع إلى طلبات UWSGI وتمريرها إليها من الويب. هذا التكوين هو في الواقع بسيط جدا لإعداد. ابدأ بتحرير ملف جديد ومرة أخرى استبدال my_site أدناه مع اسم المجال الخاص بك:

sudo nano /etc/nginx/sites-available/my_site.conf
# /etc/nginx/sites-available

# tell it where to look for django
upstream django_serve {
    server 127.0.0.1:10800;
}

server {
    listen 80; #can be 443 if you have SSL set up.
    root /home/user/public_html/my_site/;
    server_name www.my_site.com;

    location / {
        uwsgi_pass django_serve;
        include uswgi_params;
    }
}

ل Nginx لقراءة واستخدام هذا الملف، نحتاج إلى إضافته إلى الدليل الذي يدعم المواقع. هذا الأمر يخلق رابطا ناعما به.

sudo  ln -s /etc/nginx/sites-available/my_site.conf /etc/nginx/site-enabled

الآن ، أعد تحميل NGINX:

sudo systemctl restart nginx

الآن، حاول زيارة الموقع على VPS. إذا سار كل شيء على ما يرام، يجب أن ترى هذا:

صفحة الويب الافتراضية في Django.

خاتمة

في حين أن هناك العديد من الطرق لإقامة UWSGI و Nginx، فإن هذا واحد بسيط للغاية ومباشر. نأمل أن يكون هذا الدليل كافيا لإبداعك، وكما هو الحال دائما، يمكنك الوصول إليه إلينا إذا كان لديك أي أسئلة أو مخاوف إضافية.

كتب بواسطة Hostwinds Team  /  يوليو 26, 2019