Телеграм канал:
В видео показываю как легко и просто задеплоить приложение на новой 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
4 years ago 03:09:54 14
Полный деплой / Django
7 years ago 01:18:33 39
5. Деплой Django проекта на VPS
3 years ago 00:25:20 11
Деплой django 3 на сервер от начала до конца
3 years ago 00:17:55 19
#1 Деплой Django приложения на VPS [docker gunicorn nginx ssl] | Докеризация проекта
1 year ago 00:19:02 1
Деплой Django-проекта в системе ISPmanager 6
4 years ago 00:10:43 8
#3 Деплой Django приложения на VPS [docker gunicorn nginx ssl] | Разворачиваем проект на сервере