Best Flask open-source libraries and packages

Flask_CRUD

Пример flask crud с установкой на сервер nginx
Updated 1 year ago

Пример CRUD на flask с разворотом на сервере nginx

GitHub repo file count GitHub repo size GitHub top language

Установка зависимостей

sudo apt update

sudo apt install python3-pip python3-dev build-essential libssl-dev libffi-dev python3-setuptools

venv

sudo apt install python3-venv

или

pip install virtualenv

В папке с проектом создать venv

python3 -m venv venv

или

virtualenv venv

запусть venv

source venv/bin/activate

установить зависимости

pip install -r req.txt

pip install wheel

pip install uwsgi

Инициализация бд

python

    from main import db

    db.create_all()

доступ к портам

sudo ufw allow 5000

Тестовый запуск приложения

uwsgi --socket 0.0.0.0:5000 --protocol=http -w wsgi:app



Файл конфигурации uwsgi в wsgi.ini

Создание служебного файла systemd

sudo nano /etc/systemd/system/flask_crud.service

[Unit]
Description=uWSGI instance to serve flask - nginx
After=network.target

[Service]
User=vivchy
Group=www-data
WorkingDirectory=/home/user/flask_CRUD
Environment="PATH=/home/user/flask_CRUD/venv/bin"
ExecStart=/home/user/flask_CRUD/venv/bin/uwsgi --ini wsgi.ini

[Install]
WantedBy=multi-user.target

Запуск

sudo systemctl start myproject

sudo systemctl enable myproject

sudo systemctl status myproject


Настройка NGINX

Создание файла конфигурации

sudo nano /etc/nginx/sites-available/flask_crud

server {
    listen 80;
    server_name your_domain www.your_domain;

    location / {
        include uwsgi_params;
        uwsgi_pass unix:/home/user/flask_crud/flasktonginx.sock;
    }
}

sudo ln -s /etc/nginx/sites-available/myproject /etc/nginx/sites-enabled

sudo nginx -t

sudo systemctl restart nginx

sudo ufw delete allow 5000

sudo ufw allow 'Nginx Full'

Сайт будет доступен на привязанном url

источник

Tags nginx sqlite3