Hostwinds Учебники
Результаты поиска для:
Содержание
Теги: Ubuntu
Python - популярный язык для некоторых веб-разработчиков. Он имеет фреймворки, такие как колба и Django, которые могут ускорить разработку Backend Web. Это руководство будет перейти, как получить Framework Django UP и запустив на сервере VPS HostWinds, который будет подан через Интернет.
Большинство услуг в вашей системе не нужно управлять корнем, а по соображениям безопасности мы настроим пользователю без root для запуска остальных команд в этом руководстве.Вы можете назвать этого пользователя что угодно.Здесь я создаю пользователя под названием «Пользователь»:
adduser user
Он должен пригласить вас пароль для этого нового пользователя, создать пароль, который вы можете вспомнить, и уж услугу для других.Это также попросит некоторую дополнительную информацию, но она не должна ничего повлиять, если вы оставите все эти поля пустыми.Теперь мы хотим, чтобы этот пользователь запускал некоторые корневые команды, поэтому для моего «пользователя» я собираюсь добавить их в группу под названием «Sudo».
usermod -aG sudo user
Это позволит пользователям префиксировать свои команды с помощью команд «sudo», которые обычно защищены root, используя пароль пользователя.
Теперь используйте команду «Выход» и войдите в систему на сервер используя SSH Как пользователь, который вы настроили.Для пользователя, который мы просто настроим, имя пользователя будет «пользователем», и пароль будет тот, который вы устанавливаете при запуске команды AddUser.
Чтобы использовать 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 - это программное обеспечение протокола, которое связывается между кодом 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 с вашим доменом.
Как только 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 для прослушивания 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