Need help? Chat now!

Hostwinds Учебники

Результаты поиска для:


Содержание


Для начала вам понадобится следующее:
Мы будем использовать:
Создание пользователя
Установка и настройка Django
Конфигурация uWSGI
Конфигурация службы Systemd
Конфигурация NGINX
Вывод

Как запустить веб-фреймворки Python (Ubuntu 18.04)

Теги: Ubuntu 

Для начала вам понадобится следующее:
Мы будем использовать:
Создание пользователя
Установка и настройка Django
Конфигурация uWSGI
Конфигурация службы Systemd
Конфигурация NGINX
Вывод

Python - популярный язык для некоторых веб-разработчиков. Он имеет фреймворки, такие как колба и Django, которые могут ускорить разработку Backend Web. Это руководство будет перейти, как получить Framework Django UP и запустив на сервере VPS HostWinds, который будет подан через Интернет.

Для начала вам понадобится следующее:

  • Облачный VPS-сервер Hostwinds Linux
  • Доступ по SSH
  • Ubuntu 18.04
  • Доменное имя, которое указано на ваш сервер

Мы будем использовать:

  • Веб-сервер NGINX
  • Фреймворк Django Python
  • uWSGI действует как интерфейс между ними.

Создание пользователя

Большинство услуг в вашей системе не нужно управлять корнем, а по соображениям безопасности мы настроим пользователю без root для запуска остальных команд в этом руководстве.Вы можете назвать этого пользователя что угодно.Здесь я создаю пользователя под названием «Пользователь»:

adduser user

Он должен пригласить вас пароль для этого нового пользователя, создать пароль, который вы можете вспомнить, и уж услугу для других.Это также попросит некоторую дополнительную информацию, но она не должна ничего повлиять, если вы оставите все эти поля пустыми.Теперь мы хотим, чтобы этот пользователь запускал некоторые корневые команды, поэтому для моего «пользователя» я собираюсь добавить их в группу под названием «Sudo».

usermod -aG sudo user

Это позволит пользователям префиксировать свои команды с помощью команд «sudo», которые обычно защищены root, используя пароль пользователя.

Теперь используйте команду «Выход» и войдите в систему на сервер используя SSH Как пользователь, который вы настроили.Для пользователя, который мы просто настроим, имя пользователя будет «пользователем», и пароль будет тот, который вы устанавливаете при запуске команды AddUser.

Установка и настройка Django

Чтобы использовать Django, вам нужно будет настроить среду Python.Начните с помощью этих команд, чтобы обновить программное обеспечение до последней версии:

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, нам нужно добавить домен в разрешенные хосты. Вы можете написать или редактировать файл в командной строке с помощью текстового редактора командной строки. Многие доступны на Linux, и мы будем использовать Nano в этом руководстве.

Использование Nano, отредактируйте настройки файла .py в каталоге MySite, как так:

nano mysite/settings.py

Один раз в файле найдите строку, которая читает: разрешенные_хосты = [].

В скобках добавьте доменное имя вашего сайта с помощью кавычек, как так:

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

Нажатие Control-X выходит нано, когда он просит вас сохранить, нажмите «Y».

Вы можете использовать команду DEACTIVATE, чтобы вернуться в обычную оболочку.

Создав новый сайт, мы можем переключить наше внимание на настройку uWSGI.

Конфигурация uWSGI

UWSGI - это программное обеспечение протокола, которое связывается между кодом Python и программным обеспечением WebServer. Для простоты мы собираемся использовать наш хост, используйте только один экземпляр UWSGI. Мы настроим файл конфигурации для нашего проекта и создаем систему Systemd Service, чтобы запустить ее на заднем плане.

Для начала нам нужно написать файл для настройки uWSGI.

Еще раз воспользуемся nano для записи файла:

nano mysite.ini

Вот для начала INI-файл barebones:

#/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

Замените $ USER выше с именем пользователя, которое вы используете и my_site с вашим доменом.

Конфигурация службы Systemd

Как только UWSGI настроен, нам нужно получить Linux, чтобы автоматически запустить его на заднем плане.Большинство современных дистрибутивов Linux управляло это с помощью SystemD Software.Вам нужно будет создать то, что называется «сервисный файл» для 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

Замените $ User выше с именем пользователя, с которым вы работаете и 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