Introduction
- Cet article vous guide tout au long du processus d’utilisation de Gunicorn, un serveur HTTP WSGI pour Python, pour exécuter Flask, Django et d’autres applications WSGI en production.
- Avant de commencer, assurez-vous d’avoir Python et Gunicorn installés dans votre environnement. Vous pouvez installer Gunicorn à l’aide de la commande suivante :
- Ajoutez aussi
gunicornà votrerequirements.txt, pour que Square Cloud l’installe avec vos autres dépendances :
requirements.txt
Utilisation de base
Pour exécuter une application web Python avec Gunicorn, vous devez disposer d’une application WSGI comme flask, django ou un autre framework.Une fois votre application prête, vous devez connaître le nom du module et le nom de la variable qui contient l’objet application WSGI.
Par exemple, si vous avez une application Flask dans un fichier nommé
app.py et que l’instance Flask est nommée app, vous pouvez l’exécuter avec Gunicorn à l’aide de la commande suivante :
python -m gunicornexécute Gunicorn en tant que module python.--bind 0.0.0.0:80indique à Gunicorn d’écouter sur toutes les interfaces réseau sur le port 80.app:appspécifie le nom du module (app) et le nom de la variable (app) qui contient l’objet application WSGI.
wsgi.py que Django crée dans le package de votre projet (remplacez myproject par le nom de votre projet) :
Exécution sur Square Cloud
Placez la commande dans le champSTART de votre fichier de configuration, pour que Square Cloud démarre votre application avec Gunicorn :
squarecloud.app
Gunicorn doit écouter sur
0.0.0.0:80 : Square Cloud achemine le trafic de votre sous-domaine vers le port 80 de votre application. Square Cloud définit aussi la variable d’environnement PORT à 80, et Gunicorn la lit : sans option --bind, il écoute sur 0.0.0.0:$PORT lorsque PORT est définie.Options supplémentaires
Gunicorn fournit plusieurs options pour personnaliser son comportement. Nous en présentons ici quelques-unes.Workers
--workers <number>
MEMORY. Si votre application s’arrête avec LACK_OF_RAM, réduisez le nombre de workers.
Name
--name <name>-n <name>
Worker-class
--worker-class <class>-k <class>
sync, mais vous pouvez également utiliser gevent, eventlet, tornado ou un autre type de worker.
Extras
Gunicorn possède de nombreuses autres options et fonctionnalités que vous pouvez explorer dans la documentation officielle.Fichier de configuration
- Vous pouvez également définir les options de Gunicorn dans un fichier de configuration Python. Gunicorn charge automatiquement un fichier nommé
gunicorn.conf.pydepuis le répertoire où il s’exécute, qui est la racine de votre projet sur Square Cloud. Pour tout autre nom de fichier, passez-le avec-c <file>.
gunicorn.conf.py
- Avec ce fichier dans votre projet, le champ
STARTpeut se limiter à :
squarecloud.app
Prochaines étapes
Flask
Déployez une application Flask derrière Gunicorn.
Django
Déployez un projet Django derrière Gunicorn.
L'application ne démarre pas
Corrigez EADDRINUSE, LACK_OF_RAM et les autres échecs au démarrage.
Avez-vous aimé cet article ?
- Nous avons créé ce contenu avec le plus grand soin afin d’offrir la meilleure aide possible. Si cet article vous a aidé d’une quelconque manière, soutenez notre travail ! Les développeurs ont déjà noté Square Cloud 4,9/5 sur 402 avis sur Google et Trustpilot, laissez le vôtre aussi ! Cela nous aide à comprendre ce qui compte le plus pour vous.
Google Reviews
Laissez votre avis sur Google Reviews.
Trustpilot
Laissez votre avis sur Trustpilot.

