Flask est un micro framework Web gratuit et open source pour Python conçu pour aider les développeurs à créer des applications Web sécurisées, évolutives et maintenables. Flask est basé sur Werkzeug et utilise Jinja2 comme moteur de modèle.
Contrairement à Django, par défaut, Flask n'inclut pas ORM, la validation de formulaire ou toute autre fonctionnalité fournie par des bibliothèques tierces. Flask est construit avec des extensions à l'esprit, qui sont des packages Python qui ajoutent des fonctionnalités à une application Flask.
Il existe différentes méthodes pour installer Flask sur Ubuntu.
Les packages Flask sont inclus dans les dépôts officiels d'Ubuntu et peuvent être installés à l'aide de apt
directeur chargé d'emballage. C'est le moyen le plus simple d'installer Flask sur Ubuntu 20.04, mais pas aussi flexible que l'installation dans un environnement virtuel. De plus, la version incluse dans les référentiels peut être en retard par rapport à la dernière version de Flask.
Les environnements virtuels vous permettent de créer un environnement isolé pour différents projets Python. De cette façon, vous pouvez avoir plusieurs environnements Flask différents sur un seul ordinateur et installer une version spécifique d'un module par projet sans craindre que cela n'affecte vos autres installations Flask. Si vous installez Flask dans l'environnement global, vous ne pouvez installer qu'une seule version de Flask sur votre ordinateur.
Dans cet article, nous verrons comment installer Flask sur Ubuntu 20.04 dans un environnement virtuel Python.
Installation de Flask sur Ubuntu 20.04 #
Ubuntu 20.04 est livré avec Python 3.8. Vous pouvez vérifier que Python est installé sur votre système en tapant :
python3 -V
Le résultat devrait ressembler à ceci :
Python 3.8.5
La méthode recommandée pour créer un environnement virtuel consiste à utiliser le venv
module, qui est fourni par le python3-venv
emballer. Exécutez la commande suivante pour installer le package :
sudo apt install python3-venv
Une fois le module installé, nous sommes prêts à créer un environnement virtuel pour l'application Flask.
Accédez au répertoire où vous souhaitez stocker les environnements virtuels Python 3. Il peut s'agir de votre répertoire personnel ou de tout autre répertoire dans lequel votre utilisateur dispose d'autorisations de lecture et d'écriture.
Créez un nouveau répertoire pour l'application Flask et basculez-y :
mkdir flask_app && cd flask_app
Exécutez la commande suivante dans le répertoire pour créer l'environnement virtuel :
python3 -m venv venv
La commande créera un répertoire appelé venv
, qui contient une copie du binaire Python, du gestionnaire de packages Pip, de la bibliothèque Python standard et d'autres fichiers de support. Vous pouvez utiliser le nom de votre choix pour l'environnement virtuel.
Pour commencer à utiliser l'environnement virtuel, vous devez l'activer avec le activate
script :
source venv/bin/activate
Une fois activé, le répertoire bin de l'environnement virtuel sera ajouté au début du $PATH
variable. L'invite de votre shell changera également et affichera le nom de l'environnement virtuel que vous utilisez actuellement. Dans cet exemple, c'est venv
.
Maintenant que l'environnement virtuel est activé, utilisez le gestionnaire de packages Python pip
pour installer Flask :
pip install Flask
Dans l'environnement virtuel, vous pouvez utiliser la commande pip
au lieu de pip3
et python
au lieu de python3
. Pour vérifier l'installation, exécutez la commande suivante, qui imprime la version de Flask :
python -m flask --version
Au moment de la rédaction de cet article, la dernière version officielle de Flask est la 1.1.2
Python 3.8.5
Flask 1.1.2
Werkzeug 1.0.1
Votre version de Flask peut différer de la version présentée dans cet exemple.
Création d'une application minimale #
Nous allons créer une application hello world simple qui affichera simplement "Hello World !".
Ouvrez votre éditeur de texte ou votre IDE Python et créez le fichier suivant :
~/flask_app/hello.pyfrom flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
Voici ce que fait le code :
- Cette première ligne importe la classe Flask.
- La deuxième ligne crée une nouvelle instance de la classe Flask.
- La
route()
le décorateur est utilisé pour enregistrer lehello_world
fonction pour le/
itinéraire. Lorsque cette route est demandée, la fonction est appelée et le message "Hello World!" est retourné au client.
Enregistrez le fichier sous hello.py
et revenez à la fenêtre de votre terminal.
Nous utiliserons le flask
commande pour exécuter l'application, mais avant cela, nous devons indiquer au shell l'application avec laquelle travailler en définissant le FLASK_APP
variable d'environnement :
export FLASK_APP=hello.py
flask run
La commande ci-dessus lancera le serveur de développement intégré.
Le résultat ressemblera à ceci :
* Serving Flask app "hello.py"
* Environment: production
WARNING: Do not use the development server in a production environment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
Si vous avez installé Flask sur une machine virtuelle et que vous souhaitez accéder au serveur de développement Flask, vous pouvez rendre le serveur accessible au public en ajoutant --host=0.0.0.0
au flask run
commande.
Ouvrez http://127.0.0.1:5000
dans votre navigateur Web, et vous serez présenté avec le "Hello World!" message.
Pour arrêter le type de serveur de développement, CTRL-C
dans votre terminal.
Une fois que vous avez terminé votre travail, désactivez l'environnement en tapant deactivate
, et vous reviendrez à votre shell normal.
deactivate