Question

Je commence un nouveau projet webapp en Python pour entrer dans l'état d'esprit agile et je voudrais faire des choses « correctement » en ce qui concerne le déploiement. Cependant, je trouve l'ensemble virtualenv / tissu / zc.buildout / etc trucs un peu confus -. Je suis habitué à quelques fichiers FTP'ing PHP sur un serveur et pointant vers un serveur web à elle

Après le déploiement de la mise en place du serveur ressemblerait à quelque chose comme:
Nginx --proxy-to--> WSGI Webserver (Spawning) --> WSGI Middleware --> WSGI App (probably MNML or similar)
avec le serveur Web de python géré par supervisord.

Quel type de déploiement set-up / packages / apps dois-je être à la recherche en? Et est-il une structure de répertoire spécifique que je dois rester avec mon application pour faciliter le déploiement?

Était-ce utile?

La solution

Vous avez déjà mentionné buildout, et il est tout ce que vous avez besoin. Google par exemple buildouts pour les différentes parties. Prend un certain temps pour mettre en place la première fois, mais vous pouvez réutiliser la configuration entre les différents projets aussi.

Laissez supervisord commencer tout, pas seulement le serveur python. Puis commencez supervisord au redémarrage soit Cron Fron ou init.d.

Autres conseils

Je l'ai entendu de bonnes choses sur Tissu :

  

Le tissu est une bibliothèque Python et   outil de ligne de commande destiné à   simplifier le déploiement d'applications ou   l'exécution des tâches d'administration du système   via le protocole SSH. Il offre   outils pour l'exécution arbitraire shell   des commandes (soit en tant que connexion normale   , ou bien par l'intermédiaire d'sudo), le téléchargement et   le téléchargement de fichiers, et ainsi de suite.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top