Flask — это легкий микровеб-фреймворк для Python. Его простота и гибкость делают его отличным выбором для создания чего угодно: от небольших личных проектов до сложных, готовых к использованию веб-приложений. В этом руководстве мы познакомим вас с процессом установки Flask на Debian 12.

Flask зависит от набора инструментов Werkzeug WSGI, механизма шаблонов Jinja и набора инструментов Click CLI. Независимо от того, являетесь ли вы опытным разработчиком или только начинаете свой путь веб-разработки, мы предоставим вам четкие и простые в использовании шаги, которые помогут вам запустить Flask в кратчайшие сроки.

Предварительные условия

  • Debian 12 VPS с объемом оперативной памяти не менее 4 ГБ.
  • Доступ по SSH с привилегиями sudo или root-доступом.

Кроме того, рекомендуется иметь как минимум 2 ГБ SWAP-памяти, даже если у вас достаточно доступной оперативной памяти.

Шаг 1. Обновите систему

Прежде всего, нам нужно войти в наш Debian 12 VPS через SSH:

ssh root@IP_Address -p Port_number

Замените «root» на пользователя с привилегиями sudo или root, если необходимо. Кроме того, замените «IP_Address» и «Port_Number» соответствующим IP-адресом вашего сервера и номером порта SSH. Далее давайте убедимся, что мы используем Debian 12. Вы можете сделать это следующим образом:

# lsb_release -a

Команда должна вернуть вывод, подобный этому:

No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm

Шаг 2. Установите пакеты Python и создайте виртуальную среду

В Debian 12 по умолчанию установлен Python версии 3.11 — вы можете проверить это с помощью команды:

# python --version
Python 3.11.2

Теперь вы можете установить необходимые пакеты python3-pip и python3-venv с помощью команды:

# apt install python3-venv python3-pip

Вы можете установить Flask глобально с помощью команды pip3 install flask, но рекомендуется создать виртуальную среду и установить там приложение Flask.

Давайте создадим нового пользователя и установим приложение Flask в новой виртуальной среде:

# adduser john

Теперь вы можете войти в систему как пользователь john с помощью приведенной выше команды. После входа в систему создайте каталоги flaskapp/templates:

# su - john
$ mkdir -p flaskapp/templates

Шаг 3. Установите Flask на Debian 12

Войдите в каталог с именем flaskapp — теперь вы можете продолжить и создать виртуальную среду.

$ cd flaskapp
$ python3 -m venv virtualenv

Теперь войдите в виртуальную среду с помощью:

# source virtualenv/bin/activate

Теперь вы активировали виртуальную среду, где мы можем начать установку. Давайте установим Flask и Gunicorn:

(virtualenv) john@debian12$ pip3 install flask gunicorn

После завершения установки вы должны получить аналогичный вывод:

Successfully installed Jinja2-3.1.2 MarkupSafe-2.1.3 Werkzeug-3.0.0 blinker-1.6.3 click-8.1.7 flask-3.0.0 gunicorn-21.2.0 itsdangerous-2.1.2 packaging-23.2

Запуск простого приложения Flask

После установки Flask вы можете запустить простое приложение, чтобы проверить, все ли работает должным образом. Убедитесь, что вы вошли в систему как пользователь «john». Создайте файл app.py с помощью предпочитаемого вами текстового редактора:

(virtualenv) john@debian12 ~/flas$ nano simpleapp.py 

Добавьте в файл следующий код:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return 'Hello, World!'

if __name__ == '__main__':
    app.run()

Сохраните и закройте файл. Теперь вы можете запустить этот пример программы:

flask run & 

Приложение продолжит работу в фоновом режиме, прослушивая порт 5000.

Вы можете проверить вывод программы с помощью этой быстрой команды:

curl http://127.0.0.1:5000

Вы должны получить следующий вывод:

127.0.0.1 - - [13/Oct/2023 08:14:17] "GET / HTTP/1.1" 200 -
Hello, World!

Поздравляем! Вы успешно установили Flask в Debian 12. Теперь вы можете использовать Flask для запуска своих программ и разработки программного обеспечения.

Если вам понравился этот пост о том, как настроить Flask на Debian 12, поделитесь им с друзьями в социальных сетях или просто оставьте ответ в разделе комментариев. Спасибо.