Телеграм канал:
В видео показываю как легко и просто задеплоить приложение на новой django 3 версии, которая внезапно стала асинхронной, показываю что использовать вместо gunicorn. Разворачиваю все на Ubuntu python 3.8.
Таймкоды
00:00 О чем видео
00:58 Настройка виртуал бокс и ssh
02:00 Установка и обзор библиотек
03:35 Настройка Postgres
06:05 Подготовка python окружения
08:23 О замене gunicorn - uvicorn
09:38 Подготовка django
12:22 Настройка supervisor
16:20 Настройка nginx
20:19 Проверяем что все успешно
22:17 Послесловие
Команды
На всякий случай ссылка на инструкцию как установить ssh
Установка нужных библиотек
sudo apt update
sudo apt install python3-pip python3-dev python3-venv libpq-dev postgresql postgresql-contrib nginx supervisor
Настройка постгрис
sudo -u postgres psql
CREATE DATABASE db_name;
CREATE USER test_user WITH PASSWORD ’1234’;
ALTER ROLE test_user SET client_encoding TO ’utf8’;
ALTER ROLE test_user SET default_transaction_isolation TO ’read committed’;
ALTER ROLE test_user SET timezone TO ’GMT 3’;
GRANT ALL PRIVILEGES ON DATABASE db_name TO test_user;
\q
Репозиторий с проектом
git clone
Создаем виртуальное окружение и устанавливаем зависимости
python3.8 -m venv venv
source venv/bin/activate
python3.8 -m pip install -r
python3.8 -m pip install uvicorn
Переходим в папку с проектом (django 3)
python3.8 migrate
python3.8 collectstatic
pytohn3.8 createsuperuser
Проверяем uvicorn
python -m uvicorn :application --uds /tmp/
Настраиваем supervisor
sudo nano /etc/supervisor/
[program:django]
command = /home/vmax/venv/bin/python3.8 -m uvicorn :application --uds /tmp/
directory = /home/vmax/django3
stderr_logfile=/var/log/
stdout_logfile=/var/log/
autostart=true
autorestart=true
Перезапуск supervisor
service supervisor restart
Настраиваем nginx
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default-backup
sudo nano /etc/nginx/sites-available/default
server {
listen 80;
server_name ;
charset utf-8;
client_max_body_size 10M;
location /static {
alias /home/vmax/django3/static;
}
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect off;
proxy_buffering off;
proxy_pass http://uvicorn;
}
}
upstream uvicorn {
server unix:/tmp/;
}
Перезапуск nginx
service nginx restart
11 views
7
0
8 months ago 02:23:41 1
Как организовать идеальную структуру Django проекта (Часть 1)
11 months ago 00:30:07 1
ПИЛИМ БОЕВОЙ ПРОЕКТ НА ПИТОНЕ (PYTHON) 8 PART. БОЛЬ И СТРАДАНИЕ ДЕПЛОЯ DJANGO ПРИЛОЖЕНИЯ НА PYTHON
11 months ago 01:25:03 1
Deploy a Microservices App on Kubernetes with GitLab CI/CD
1 year ago 00:20:37 1
How To Deploy Django on Windows server Using Apache
1 year ago 00:15:04 7
Написал сайт на DJANGO с НУЛЯ за МЕСЯЦ / Какие возможности даёт данный движок для разработки
1 year ago 00:19:02 1
Деплой Django-проекта в системе ISPmanager 6
2 years ago 00:10:29 12
Деплой бота Telegram или Discord на Heroku | Развертывание в облаке