Sí, creo que se debe utilizar para desplegar virtualenv en la producción. Hace que todo sea mucho más fácil y más limpio para usted, especialmente si planea implementar varios servicios, p. sitios web basados en django u otros proyectos de Python. No desea que cada uno de ellos esté contaminando el entorno python global con sus paquetes.
Creo que virtualenv lo ayudará a administrar todas sus dependencias limpiamente.
para actualizar su env producción de todo lo que tiene que hacer es:
pip -r name_of_your_requirements_file.txt
utilizo virtualenvs en la producción, y se puede utilizar uWSGI para servir a las aplicaciones, la Cherokee como un servidor web.
Para utilizar su virtualenv en producción, deberá agregar su ruta a su PYTHONPATH.
Por ejemplo si su env tiene la ruta "/ home/www/mi_proyecto/env /", la ruta para añadir sería:
/home/www/env/lib/python2.7/site-packages/
Usted puede configurar esto de muchas maneras diferentes, pero si se está generando su FCGI o interfaz uWSGI través manage.py, sólo tiene que añadir lo siguiente en la parte superior de su manage.py (antes que el resto):
import os
my_virtualenv_path = "/home/www/my_project/env/lib/python2.7/site-packages/"
# Add it to your PYTHONPATH
os.path.append(my_virtualenv_path)
puede adaptar este a su configuración, por si caso también podría hacer lo siguiente en el shell:
export PYTHONPATH:$PYTHONPATH:/home/www/my_project/env/lib/python2.7/site-packages/
También necesitará agregar el directorio que contiene su archivo settings.py a PYTHONPATH, para que Django pueda descubrirlo. Simplemente proceda de una manera similar para hacerlo.
Tenga en cuenta que la documentación oficial de Django menciona el uso de virtualenv en producción: https://docs.djangoproject.com/en/dev/howto/deployment/wsgi/modwsgi/#using-a-virtualenv –
Recomendé el tutorial de @ bartek [La Hermosa Simplicidad de un nginx y despliegue de uWSGI] (http://bartek.im/blog/2012/07/08/simplicity-nginx-uwsgi-deployment.html) –
Heroku lo recomienda: https: // devcenter. heroku.com/articles/deploying-python –