Hostwinds دروس

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


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


سوف تحتاج:
إعداد مستخدم Postgresql
إعداد الميزانين
نشر التطبيق باستخدام uWSGI
تكوين NGINX

تثبيت وتكوين الميزانين (أوبونتو 19.10)

العلامات: Ubuntu 

سوف تحتاج:
إعداد مستخدم Postgresql
إعداد الميزانين
نشر التطبيق باستخدام uWSGI
تكوين NGINX

Mezzanine هو نظام إدارة المحتوى مكتوب في بيثون.إنه بديل رائع ل WordPress الشهير ويقدم واجهة مماثلة.

سوف تحتاج:

  • خادم Hostwinds SSD Cloud أو خادم مخصص
  • أوبونتو 19.10. يمكنك الحصول على ISO من الكنسي هنا: https://ubuntu.com/download/serve بعد ذلك ، استخدم دليلنا للتثبيت من ISO هنا: https://www.hostwinds.com/guide/reinstall-vps-cloud-server-from-an-iso/
  • مجال عام عامل. تقدم Hostwinds المجالات هنا: http://hostwinds.com/domains.php
  • بايثون 3
  • البرنامج النصي virtualenvwrapper
  • nginx webserver.
  • Postgresql

لتشغيل كل هذا ، استخدم الأمر:

sudo apt install python3 python3-pip postgresql nginx libpq-dev

ثم استخدم النقطة في تثبيت virtualenvwrapper *:

sudo pip3 install virtualenvwrapper

عادة، إنها فكرة سيئة استخدام PIP3 في تثبيت البرنامج، ولكن VirtualenvWrapper هي واحدة من الحزم القليلة التي من المنطقي تثبيتها على مستوى النظام.

الآن، قم بإعداد بيئة لميزانين وتثبيته:

mkvirtualenv my_site
work on my_site
pip3 install mezzanine uwsgi pillow

مع تثبيت جميع التبعيات ، نحتاج إلى إعداد قاعدة البيانات.

إعداد مستخدم Postgresql

يتطلب تكوين مستخدم لل postgresql فقط بعض عبارات SQL فقط يمكن تشغيله من سطر أوامر SQL. لبدء Shell SQL:

sudo su postgres -c psql

في قذيفة psql ، قم بتشغيل هذه الأسطر الثلاثة:

CREATE USER your_site_name WITH ENCRPYPTED PASSWORD 'secure_pass';
CREATE DATABASE your_site_name;
GRANT ALL PRIVILEGES ON DATABASE your_site_name TO your_site_name;

ستقوم هذه الأوامر بإنشاء قاعدة بيانات وتفاعل المستخدم معها.

الآن، قد نحتاج إلى منح الوصول إلى هذا المستخدم.استخدم هذا الأمر لتحرير pg_hba.conf، هذا ما يستخدمه postgresql للتحقق من الوصول:

sudo nano /etc/PostgreSQL/11/main/pg_hba.conf

تأكد من حدوث هذا الخط في الملف:

المضيف الكل 127.0.0.1/32 MD5

بمجرد تحرير الملف، أعد تشغيل قاعدة البيانات لتطبيق التغييرات:

sudo systemctl restart postgresql

إعداد الميزانين

الآن بعد أن تم إعداد قاعدة البيانات، يمكننا المضي قدما في تكوين Mezzanine. لبدء مشروع Mezzanine، استخدم الأمر:

(my_site) مشروع الميزانين my_site

cd my site

في الدليل My_Site، ستجد دليلا آخر يسمى "My_Site".ستحتاج إلى تحرير ملف يسمى Settings.py:

nano mysite/settings.py

هناك شيئان يجب إعدادهما في هذا الملف.

تكوين قاعدة البيانات ، استخدم نفس المستخدم وكلمات المرور من مستخدم SQL الذي أنشأناه سابقًا:

DATABASES = {
"default": {
    # Add "postgresql", "mysql", "sqlite3" or "oracle".
    "ENGINE": "django.db.backends.postgresql",
    # DB name or path to database file if using sqlite3.
    "NAME": "my_site",
    # Not used with sqlite3.
    "USER": "my_site",
    # Not used with sqlite3.
    "PASSWORD": "secure_pass",
    # Set to empty string for localhost. Not used with sqlite3.
    "HOST": "127.0.0.1",
    # Set to empty string for default. Not used with sqlite3.
    "PORT": "",
}
}

المضيفون المسموح لهم:

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

بمجرد أن تصبح جاهزة ، احفظ ملف settings.py.

يتم استخدام البرنامج النصي manager.py المسمى بشكل مناسب لإعداد وإدارة الخادم الخاص بك. الآن بعد أن تم تكوين مستخدم قاعدة البيانات Mezzanine بشكل صحيح ، يمكننا إضافة الجداول باستخدام الأمر createdb كما يلي:

python manage.py createdb

بعد ذلك ، أضف مستخدمًا إداريًا للمساعدة في إدارة موقعك:

python manage.py createsuperuser

أخيرا، قم ببناء الأصول، مثل JavaScript و CSS، باستخدام:

python manage.py collectstatic

نشر التطبيق باستخدام uWSGI

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

في دليل my_site / my_site ، قم بإنشاء ملف يسمى my_site.ini ، باستخدام nano:

[uwsgi]
socket = 127.0.0.1:8080
chdir = /home/$USER/my_site
wsgi-file = my_site/wsgi.py
processes = 2
threads = 1

يمكنك إعداد uWSGI للتشغيل عند التمهيد عن طريق إنشاء ملف خدمة في /usr/lib/systmd/system/my_site.service:

[Unit]
Description=My Site
After=Network.target

[Service]
User=$USER
Group=$USER
WorkingDirectory=/home/$USER/my_site
Environment="PATH=/home/$USER/.virtualenvs/mezzanine/bin"
ExecStart=/home/$USER/.virtualenvs/mezzanine/bin/uwsgi my_site.ini

أخيرًا ، قم بتشغيل الأمر:

sudo systemctl enable my_site

و:

sudo systemctl start my_site

من شأنها أن تكوين عداء Python الخاص بك للبدء في التمهيد وبدء تشغيله الآن.

تكوين NGINX

مهمة أخيرة لإعادة تشغيل كل هذا: إعداد خادم الويب. Nginx هو خيار شائع لمشاريع Python بسبب قدرات الوكيل العكسي.

لتكوينه، أضف هذا الملف إلى / ETC / Nginx / المواقع ممكن:

upstream mezzanine {
        server 127.0.0.1:9081;
}

server {
        listen 80 default_server;
        server_name www.my_site.com my_site.com;
        charset utf-8;
        client_max_body_size 50M;


        location /media {
                alias /home/$USER/my_site/media;
        }

        location /static {
                alias /home/$USER/my_site/static;
        }

        location / {
                uwsgi_pass mezzanine;
                include uwsgi_params;
        }
}

ثم لتطبيق هذا التكوين ، قم بتشغيل الأمر:

sudo systemctl restart nginx

كتب بواسطة Hostwinds Team  /  ديسمبر 2, 2019