Python: Déployer en production
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 !
Le service d'hébergement cloud Python de Stackhero est une solution puissante et intuitive pour déployer vos projets Python en production en quelques minutes. Avec sa configuration simple et ses fonctionnalités robustes, vous pouvez vous concentrer sur l'écriture de code pendant que Stackhero s'occupe du reste.
Les fonctionnalités clés incluent :
- Déploiement avec un simple
git push - Domaine personnalisable avec gestion automatique des certificats TLS (HTTPS)
- VM dédiée et privée pour une sécurité et une confidentialité maximales
- Support pour HTTP/2, TLS 1.3 (HTTPS), WebSockets, compression GZIP & Brotli, ETag, et accès aux ports TCP/UDP
Prérequis
Avant de déployer vos projets sur Stackhero, assurez-vous d'avoir Git installé sur votre ordinateur.
Pour gagner du temps et éviter une configuration complexe si votre environnement de développement n'est pas prêt, envisagez d'utiliser Code-Hero de Stackhero.
Code-Hero est une plateforme de développement puissante, intuitive et prête à l'emploi que vous pouvez accéder directement via votre navigateur sur n'importe quel ordinateur, tablette ou téléphone. Basée sur un fork de VSCode, elle est préinstallée avec tous les outils de développement essentiels, vous permettant de commencer à coder immédiatement sans tracas.
Exemple d'une instance Code-Hero s'exécutant directement sur le navigateur
Etapes pour déployer sur Stackhero
Déployer votre application Python sur Stackhero est simple. Vous pouvez suivre ces étapes :
- Créez un service Python sur Stackhero.
- Ajoutez votre clé publique SSH à la configuration de votre service Python.
- Configurez la commande
git pushsur votre plateforme de développement. - Ajoutez un Makefile à votre projet.
- Déployez votre code en production.
Si vous rencontrez des problèmes lors du déploiement, la documentation "Dépannage" est susceptible de fournir une solution. Elle peut vous faire gagner du temps et vous éviter des frustrations inutiles.
Configuration de votre service "Stackhero for Python"
Si vous n'avez pas encore démarré un service Stackhero for Python, créez-en un sur votre tableau de bord Stackhero (cela ne prend que 2 minutes).
Une fois votre service Python en fonctionnement, vous devez le configurer en ajoutant votre clé publique SSH. Vous pouvez trouver votre clé publique en exécutant :
cat ~/.ssh/id_*.pub
Vous n'avez pas encore de clés SSH ?
Vous pouvez les créer en utilisant :
ssh-keygen -t ed25519
Pour configurer votre service Python :
- Allez sur le tableau de bord Stackhero et sélectionnez votre service Python.
- Cliquez sur le bouton "Configurer".
- Collez le contenu de votre clé publique dans la section "Clés publiques SSH".
Exemple de configuration d'un service Python
Astuce : Vous pouvez définir votre clé publique SSH globalement afin que les futurs services l'incluent automatiquement dans leur configuration. Pour ce faire, accédez au tableau de bord Stackhero, cliquez sur votre photo de profil en haut à droite, sélectionnez "Votre profil", et ajoutez votre clé publique SSH.
Configuration de la commande git push pour le déploiement
Le déploiement sur Stackhero utilise la CLI Git avec la commande git push. Cette méthode rend les déploiements simples, rapides et fiables et ne nécessite pas l'installation d'outils supplémentaires.
Pour activer cette fonctionnalité, copiez la valeur de la commande git remote depuis la page principale de votre service dans le tableau de bord Stackhero. La commande ressemblera à :
git remote add stackhero ssh://stackhero@<XXXXXX>.stackhero-network.com:222/project.git
Commande Git remote Python sur le tableau de bord de Stackhero
Création d'un Makefile pour le déploiement sur Stackhero
Pour déployer votre code sur Stackhero, vous devez spécifier les commandes que Stackhero doit exécuter. Cela se fait via un Makefile, qui agit comme une interface entre Stackhero et votre application.
Si vous n'êtes pas familier avec les fichiers
Makefileet la commandemake, ne vous inquiétez pas. Suivez simplement les instructions fournies ici.
Créez un Makefile à la racine de votre projet et ajoutez le contenu suivant :
run:
gunicorn app:app -b 0.0.0.0:8080 --error-logfile -
Ce Makefile inclut trois composants importants :
- La règle
runest obligatoire car elle est automatiquement exécutée par Stackhero. Ne la renommez pas. - La commande
gunicorn app:app -b 0.0.0.0:8080 --error-logfile -est un exemple et doit être remplacée par la commande appropriée pour votre application. - Un caractère de tabulation doit précéder la commande gunicorn. Si vous rencontrez une erreur indiquant "*** missing separator", cela signifie que le caractère de tabulation est manquant.
Dans cet exemple, un serveur Gunicorn démarre (assurez-vous qu'il est installé et ajouté à votre fichier requirements.txt). L'argument -b 0.0.0.0:8080 configure le serveur pour écouter sur n'importe quelle interface au port 8080. Si vous changez le port, mettez-le à jour dans la configuration de votre service Python sur le tableau de bord Stackhero. La partie app:app indique que le serveur utilisera le fichier app.py et l'instance app.
Déploiement de votre application Python
Votre application Python est maintenant prête pour le déploiement. Pour déployer votre code sur Stackhero, exécutez la commande suivante depuis votre répertoire de projet :
git push stackhero main
La première fois que vous exécutez cette commande, vous serez invité à ajouter l'empreinte de la clé SSH. Répondez "yes" lorsque vous y êtes invité. En quelques secondes, votre application sera en ligne !
Exemple de déploiement de code Python sur Stackhero en utilisant la commande git push
Pour vérifier votre application déployée, accédez à l'URL "website" affichée dans le tableau de bord Stackhero (elle ressemble généralement à https://XXXXX.stackhero-network.com).
Félicitations, votre application est maintenant déployée en production !
Vous rencontrez des problèmes lors du déploiement ?
Consultez la section Dépannage pour des solutions qui vous aideront à résoudre rapidement les problèmes.
Conclusion
Ce guide fournit un aperçu complet mais simple du déploiement de code Python en production avec Stackhero. Il sert de base solide pour mettre en œuvre efficacement vos applications.
Pour approfondir vos connaissances, envisagez d'explorer la documentation "Usages avancés du déploiement". Vous apprendrez comment déployer diverses branches git, des tags ou commits spécifiques, ainsi que gérer plusieurs environnements tels que "staging" et "production". Vous découvrirez également comment travailler avec des variables d'environnement et bien plus encore.
Si vous rencontrez un problème lors du processus de déploiement, la documentation "Dépannage" est une ressource précieuse qui peut vous aider à résoudre les problèmes rapidement et efficacement.