Python: Création d'un Makefile pour le déploiement Stackhero

Cette documentation fait partie du guide Déployer en production. Consultez le guide complet ici : Comment déployer votre code Python en production en quelques minutes.

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose une solution cloud Python prête à l'emploi offrant de nombreux avantages, notamment :

  • Déployez votre application en quelques secondes avec un simple git push.
  • Utilisez votre propre nom de domaine et bénéficiez de la configuration automatique des certificats HTTPS pour une sécurité renforcée.
  • Profitez de la tranquillité d'esprit avec des sauvegardes automatiques, des mises à jour en un clic, et une tarification simple, transparente et prévisible.
  • Obtenez des performances optimales et une sécurité robuste grâce à une VM privée et dédiée.

Gagnez du temps et simplifiez-vous la vie : il ne faut que 5 minutes pour essayer la solution d'hébergement cloud Python de Stackhero !

Pour indiquer à Stackhero comment exécuter votre application, vous utiliserez un Makefile à la racine de votre projet.

Si vous découvrez les fichiers Makefile et la commande make, pas de souci. Suivez simplement ces instructions pour commencer.

Créez un fichier Makefile à la racine de votre projet avec le contenu suivant :

run:
	gunicorn app:app -b 0.0.0.0:8080 --error-logfile -

Quelques points importants concernant ce Makefile :

  1. La règle run est obligatoire, car Stackhero l'exécute automatiquement. Ne la renommez pas.
  2. La commande gunicorn app:app -b 0.0.0.0:8080 --error-logfile - est un exemple. Adaptez-la selon les besoins de votre application.
  3. Assurez-vous de commencer la commande gunicorn par une tabulation. Si vous voyez une erreur du type "*** missing separator", cela signifie que la tabulation est absente.

Dans cet exemple, Gunicorn sert votre application (assurez-vous qu'il figure dans votre requirements.txt). L'argument -b 0.0.0.0:8080 indique qu'il écoute sur toutes les interfaces au port 8080. Si vous choisissez un autre port, pensez à mettre à jour la configuration de votre service Python dans le tableau de bord Stackhero. La partie app:app fait référence à l'objet app dans votre fichier app.py.