627 shaares
4 results
tagged
deployment
Méthode pour faire du blue-green deployment sur AWS avec des scripts python utilisant boto3 et fabric.
Des bonnes/mauvaises pratiques pour le déploiement d'applications Python:
- packager sa propre version de python au lieu d'utiliser celle fournie par l'OS
- utiliser pip au lieu des packages fournis par l'OS pour toutes les librairies Python
- utiliser des virtualenvs pour tout, la seule librairie python installée au niveau global doit être virtualenv
- ne pas faire tourner les daemons dans un simple screen ou tmux, utiliser supervisord à la place
- séparer la configuration de l'application
- utiliser nginx/gunicorn au lieu de apache/mod_wsgi pour les applis web
- packager l'applis en .DEB ou .RPM au lieu de déployer via GIT et PIP (cf. https://hynek.me/articles/python-app-deployment-with-native-packages/)
Un module Fabric pour gérer les déploiements via Git.
L'auteur utilise des Git Push depuis un repo local vers le repo sur le serveur cible au lieu d’exécuter le git pull directement sur le serveur cible.
cf. http://dan.bravender.net/2012/5/11/git-based_fabric_deploys_are_awesome.html
Comment déployer des application python en créant des packages .deb avec dh-virtualenv