Используем VPS на Debian 10

Подключаемся по ssh. Ставим вспомогательные пакеты:

$ apt update
$ apt install curl gnupg python3-pip
$ pip3 install flask

Далее по инструкции ставим Nginx Unit:

$ curl -sL https://nginx.org/keys/nginx_signing.key | apt-key add -
 
$ cat << EOF > /etc/apt/sources.list.d/unit.list
    deb https://packages.nginx.org/unit/debian/ buster unit
    deb-src https://packages.nginx.org/unit/debian/ buster unit
    EOF
 
$ apt update
$ apt install unit unit-dev unit-python3.7

Создаем пользователя под которым будем запускать Unit и директорию приложения:

$ adduser flaskuser
$ mkdir /home/flaskuser/flaskapp

Делаем само приложение:

$ nano /home/flaskuser/flaskapp/hello.py
from flask import Flask
application = Flask(__name__)
 
@application.route('/test')
def hello_world():
    return 'Hello, World!'

и конфиг для nginx unit:

$ nano /home/flaskuser/flaskapp/config.json
{
  "listeners": {
    "*:8000": {
      "pass": "applications/flask_app"
    }
  },    
  "applications": {
    "flask_app": {
      "type": "python 3.7",
      "user": "flaskapp",
      "processes": 1,
      "path": "/home/flaskuser/flaskapp",
      "module": "hello"
    }
  }
}

Загружаем конфиг в unit

$ curl -X PUT --data-binary @/home/flaskuser/flaskapp/config.json --unix-socket \
       /var/run/control.unit.sock http://localhost/config

Получаем ответ:

Если ошибка, то смотрим лог командой tail /var/log/unit.log