Virtualenv y
Buildout
Desarrollando con Python en un ambiente
aislado y estable
Creada por /Alvaro J. Hernández Arteaga @ajha63
virtualenv
virtualenv: es una herramienta para crear entornos Python aislados,
también conocidos como sandbox.
buildout
buildout: es un sistema de construcción(desarrollo) basado en Python
para crear, ensamblar e implementar aplicaciones de varias piezas,
algunas de las cuales pueden ser no basadas en Python.
Buildout permite crear una configuración buildout y reproducir el
mismo software más tarde.
virtualenv
manos a la obra!
instalando virtualenv
para instalar virtualenv necesitamos easy_install para verificar que
easy_install esta disponible en nuestro equipo ejecutamos el comando
desde una consola
ajha63@kingofpain~$easy_install-h
habemus easy_install
Sí la ejecución del comando nos muestra la ayuda del comando
easy_install, quiere decir que la herramienta esta disponible sino,
debemos primero proceder a instalarlo, para ello descargamos el
archivo distribute_setup.py desde la URL
para luego ejecutar la siguiente instrucción
http://python-distribute.org/
ajha63@kingofpain~$pythondistribute_setup.py
Sí la ejecución falla
ajha63@kingofpain~$sudopythondistribute_setup.py
I ve got the power!
Ahora...!
Ya con easy_instal en nuestro equipo podemos proceder a instalar
virtualenv
Mejor si es como root!
ajha63@kingofpain~$sudoeasy_install-Uvirtualenv
virtualenv ready!
Una vez que virtualenv puede ser utilizado, podemos crear nuestro
ambiente aislado de desarrollo.
Suponinedo que estamos en nuestro /home y que ahí tenemos un
directorio src/ dónde hacemos nuestros programas.
ajha63@kingofpain~$cdsrc
ajha63@kingofpain~/src$virtualenv--no-site-packagesplone-dev
Nos dejará un directorio plone-dev/ que será nuestro ambiente aislado
(sandbox) de desarrollo con Python
Una mirada dentro de plone-
dev
Dentro del directorio plone-dev/ virtualenv creo una estructura de
directorios e instalo toda o casi toda la base para el desarrollo con
Python
bin/
include/
lib/
local/
vamonos a una consola ...!
Observacion!
La pareja easy_install y virtualenv por ahora no proporciona la biblioteca
de desarrollo para gráficas con Python así que, sí la necesitas, se debe
instalar por separado pero, ahora en nuestro ambiente de desarrollo.
PIL
Python Image Library
La última version de la biblioteca PIL puede ser descargada desde:
y como estamos en Linux
descargamos (por supuesto) la versión para todas las plataformas
http://pythonware.com/products/pil/
Instalar PIL
Después de descargar la biblioteca PIL procedemos a descomprimir y
posteriormente a instalarlar en nuestro entorno aislado
ajha63@kingofpain~$cddownload/
ajha63@kingofpain~$tarxvzfImaging-1.1.7.tar.gz
ajha63@kingofpain~$cdImaging-1.1.7/
ajha63@kingofpain~$~/src/plone-dev/bin/pythonsetup.pyinstall
ajha63@kingofpain~$~/src/plone-dev/bin/pythonsetup.pyinstall
Escribimos la ruta completa de nuestro entorno aislado de desarrollo
para instalar con el interprete Python ahí disponible, la biblioteca PIL, de
esta manera aseguramos que quede perfectamente enlazada
virtualenv
....listo!
buildout
Creando con ...
Siempre hay dos
Un maestro y un aprendiz
Existen dos maneras de iniciar un proyecto con buildout, la primera
utilizando zc.buildout para crear nuestra propia receta; la segunda,
utilizando una de las tantas recetas buildout.
http://www.buildout.org/docs/recipelist.html
zc.buildout
Nos permite crear un proyecto desde cero dónde nosotros mismos
debemos crear nuestro archivo básico de configuranción buildout.cfg y
posteriormente ir agregando cada uno de los elementos necesrios para
el proyecto
ajha63@kingofpain~$~/src/plone-dev/easy_installzc.buildout
ajha63@kingofpain~$~/src/plone-dev/buildoutinit
buildout init creara lo necesario para iniciar un proyecto, incluyendo un
archivo de configuración buildout.cfg
buildout recipes
Sí no queremos iniciar desde cero nuestro proyecto podemos elegir una
de las miles de recetas existentes en el sitio web
y asi dar fiel cumplimiento a aquello
de no reinventar la rueda
www.buildout.org/docs/recipelist
Plone recipe
Para este caso utilizaremos una receta de plone y luego unos archivos
de configuración de buildout para refinar la construcción.
Descargamos el archivo de bootstrap de la version 4.2 de plone y lo
ubicamos en la raíz de nuestro entorno aislado, una vez ahí, creamos un
archivos de configuración buildout buildout.cfg y luego ejecutamos el
comando respectivo para iniciar el proceso de construcción
bootstrap.py
ajha63@kingofpain~$~/src/plone-dev/bin/pythonbootstrap.py--distribute
Preguntas...?
...Yo vivo de preguntar, saber no puede ser
lujo!
Puedes leer esta presentacion
en línea en
Ohttp://www.alvaro.web.ve/charlasweb/virtualenvbuildout.html
http://www.alvaro.web.ve/charlasweb/VirtualenvBuildout.pdf
también en
http://www.slideshare.net/ajha/
Fin
Alvaro J. Hernández Arteaga
/http://www.alvaro.web.ve @ajha63

Más contenido relacionado

PDF
Introducción a Vagrant
PDF
Creación de entornos de desarrollo con Vagrant
ODP
Virtualización y Provisionamiento: Entornos de desarrollo con Vagrant y Puppet
PDF
Entorno de desarrollo rápido con Vagrant
PDF
Entornos de desarrollo para symfony2 con vagrant y puppet
PDF
Vagrant: virtualizando entornos de desarrollo
PDF
Docker desde cero
PPT
Introducción a Vagrant
Creación de entornos de desarrollo con Vagrant
Virtualización y Provisionamiento: Entornos de desarrollo con Vagrant y Puppet
Entorno de desarrollo rápido con Vagrant
Entornos de desarrollo para symfony2 con vagrant y puppet
Vagrant: virtualizando entornos de desarrollo
Docker desde cero

La actualidad más candente (20)

PDF
Open Build Service
PPTX
Tutorial aTuve Catcher
PDF
Dev ops infraestructura agil con open source
PPTX
Gentoo linux
PPTX
Instalacion ubuntu11.1
PDF
PPTX
Presentación Docker
PDF
Cloud Computing. Gestión de configuraciones. Vagrant
PPT
Gentoo Linux
PDF
Cloud Computing. Gestión de configuraciones. Ansible
PPT
Java y sus caracteristicas
PPTX
Administración básica de ubuntu server parte 1
PDF
De desarrollo a producción usando docker
PPTX
Primeros pasos con Docker
PDF
Software Libre en la Carrera de Ciencias de la Computacion
PPTX
02. que es linux 2017
PPTX
Redes
PDF
Python con Anaconda
PDF
Contenedores en el mundo real
PDF
El proyecto openSUSE
Open Build Service
Tutorial aTuve Catcher
Dev ops infraestructura agil con open source
Gentoo linux
Instalacion ubuntu11.1
Presentación Docker
Cloud Computing. Gestión de configuraciones. Vagrant
Gentoo Linux
Cloud Computing. Gestión de configuraciones. Ansible
Java y sus caracteristicas
Administración básica de ubuntu server parte 1
De desarrollo a producción usando docker
Primeros pasos con Docker
Software Libre en la Carrera de Ciencias de la Computacion
02. que es linux 2017
Redes
Python con Anaconda
Contenedores en el mundo real
El proyecto openSUSE
Publicidad

Destacado (7)

PDF
Colleen P Cahill Endorsements
PPTX
Colleen P Cahill Econometrics II Presentation
PDF
Colleen P Cahill Econometrics Work Example
PDF
Colleen P Cahill Writing Sample Brownfields Redevelopment Select Pages
PDF
Colleen P Cahill Writing Sample Econometrics II Select Pages
PDF
The Six Highest Performing B2B Blog Post Formats
PDF
The Outcome Economy
Colleen P Cahill Endorsements
Colleen P Cahill Econometrics II Presentation
Colleen P Cahill Econometrics Work Example
Colleen P Cahill Writing Sample Brownfields Redevelopment Select Pages
Colleen P Cahill Writing Sample Econometrics II Select Pages
The Six Highest Performing B2B Blog Post Formats
The Outcome Economy
Publicidad

Similar a Virtualenv y buildout (20)

ODP
Buildout: Crear y desplegar entornos reproducibles en Python
PDF
Plone Gobierno
PDF
zc.buildout para desarrolladores Plone
PDF
Introduccion a Python para la web
PDF
Curso Plone Secundo Sesion
PDF
Python
PDF
Plone - Introducción y instalación
PDF
Python Enterprise
ODP
Python Multiuso
ODP
Desarrollo Aplicaciones Plone
PDF
La Caja de Herramientas del Desarrollador Moderno PHPConferenceAR
ODP
Desarrollo Aplicaciones Plone
PDF
Virtualenv
PDF
Virtualenv
PPTX
POO Y CONFIGURACION API REST FRAMEWORK DJANGO.pptx
PDF
El poder de los reptiles: Hacer herramientas de hacking es fácil
ODP
Fabric más allá de lo básico
PDF
Python power 1
ODP
Curso Mu
Buildout: Crear y desplegar entornos reproducibles en Python
Plone Gobierno
zc.buildout para desarrolladores Plone
Introduccion a Python para la web
Curso Plone Secundo Sesion
Python
Plone - Introducción y instalación
Python Enterprise
Python Multiuso
Desarrollo Aplicaciones Plone
La Caja de Herramientas del Desarrollador Moderno PHPConferenceAR
Desarrollo Aplicaciones Plone
Virtualenv
Virtualenv
POO Y CONFIGURACION API REST FRAMEWORK DJANGO.pptx
El poder de los reptiles: Hacer herramientas de hacking es fácil
Fabric más allá de lo básico
Python power 1
Curso Mu

Último (20)

PPTX
PREDICA VISION CORRECTA.pptx VISION Y MISION
PPTX
DIAPOSITIVA SEMANA 13-COMUNICACION ORAL Y ESCRITA - RT 1-08-2025-.pptx
PPTX
Curso de Materiales peligrosos Matpel 1
PDF
Cuidar, limpiar, sostener_ el trabajo que hace posible la vida   _ Trabajador...
DOC
con quien estudiar shaman de Europa en Uruguay.doc
PPTX
El hombre según el diseño original de Dios.pptx
PDF
El_Tabernaculo_de_Moises......................................
PDF
DCI_SI31_PPT_Conceptos básicos de Estadística Inferencial.pdf
DOCX
Educación Financiera 4 de secundaria.docx
PPTX
Dios requiere a siervos, más que a lideres.pptx
PPTX
MARILUZ VITE HERNANDEZ_PROCEDIMIENTO_LEIP
PDF
El Metodo Silva de Control Mental PDF.pdf
PDF
Sesión 4 Una mirada multidimensional .pdf
PDF
libro28creenciasadventistas.pdf club de libros
PDF
INTER. CRISIS Tutores kkkkkkkkkkllllllllllllllllllllllllllll
PDF
enfoque interdisciplinario en el abordaje de la educación con niños con disca...
PPTX
SESION 5 ANSIEDAD Y CONSUMO DE SUSTANCIAS PSICOACTIVAS.pptx
PDF
HABILIDADES SOCIALES PPT.pdf tutoria desarrollo personal
PPTX
SESIÓN 7 2022 II (2) (1).ppt............
PDF
reglamento_escoltas.pdf especialidad guías mayores
PREDICA VISION CORRECTA.pptx VISION Y MISION
DIAPOSITIVA SEMANA 13-COMUNICACION ORAL Y ESCRITA - RT 1-08-2025-.pptx
Curso de Materiales peligrosos Matpel 1
Cuidar, limpiar, sostener_ el trabajo que hace posible la vida   _ Trabajador...
con quien estudiar shaman de Europa en Uruguay.doc
El hombre según el diseño original de Dios.pptx
El_Tabernaculo_de_Moises......................................
DCI_SI31_PPT_Conceptos básicos de Estadística Inferencial.pdf
Educación Financiera 4 de secundaria.docx
Dios requiere a siervos, más que a lideres.pptx
MARILUZ VITE HERNANDEZ_PROCEDIMIENTO_LEIP
El Metodo Silva de Control Mental PDF.pdf
Sesión 4 Una mirada multidimensional .pdf
libro28creenciasadventistas.pdf club de libros
INTER. CRISIS Tutores kkkkkkkkkkllllllllllllllllllllllllllll
enfoque interdisciplinario en el abordaje de la educación con niños con disca...
SESION 5 ANSIEDAD Y CONSUMO DE SUSTANCIAS PSICOACTIVAS.pptx
HABILIDADES SOCIALES PPT.pdf tutoria desarrollo personal
SESIÓN 7 2022 II (2) (1).ppt............
reglamento_escoltas.pdf especialidad guías mayores

Virtualenv y buildout

  • 1. Virtualenv y Buildout Desarrollando con Python en un ambiente aislado y estable Creada por /Alvaro J. Hernández Arteaga @ajha63
  • 2. virtualenv virtualenv: es una herramienta para crear entornos Python aislados, también conocidos como sandbox.
  • 3. buildout buildout: es un sistema de construcción(desarrollo) basado en Python para crear, ensamblar e implementar aplicaciones de varias piezas, algunas de las cuales pueden ser no basadas en Python. Buildout permite crear una configuración buildout y reproducir el mismo software más tarde.
  • 5. instalando virtualenv para instalar virtualenv necesitamos easy_install para verificar que easy_install esta disponible en nuestro equipo ejecutamos el comando desde una consola ajha63@kingofpain~$easy_install-h
  • 6. habemus easy_install Sí la ejecución del comando nos muestra la ayuda del comando easy_install, quiere decir que la herramienta esta disponible sino, debemos primero proceder a instalarlo, para ello descargamos el archivo distribute_setup.py desde la URL para luego ejecutar la siguiente instrucción http://python-distribute.org/ ajha63@kingofpain~$pythondistribute_setup.py
  • 7. Sí la ejecución falla ajha63@kingofpain~$sudopythondistribute_setup.py
  • 8. I ve got the power!
  • 9. Ahora...! Ya con easy_instal en nuestro equipo podemos proceder a instalar virtualenv Mejor si es como root! ajha63@kingofpain~$sudoeasy_install-Uvirtualenv
  • 10. virtualenv ready! Una vez que virtualenv puede ser utilizado, podemos crear nuestro ambiente aislado de desarrollo.
  • 11. Suponinedo que estamos en nuestro /home y que ahí tenemos un directorio src/ dónde hacemos nuestros programas. ajha63@kingofpain~$cdsrc ajha63@kingofpain~/src$virtualenv--no-site-packagesplone-dev Nos dejará un directorio plone-dev/ que será nuestro ambiente aislado (sandbox) de desarrollo con Python
  • 12. Una mirada dentro de plone- dev Dentro del directorio plone-dev/ virtualenv creo una estructura de directorios e instalo toda o casi toda la base para el desarrollo con Python bin/ include/ lib/ local/ vamonos a una consola ...!
  • 13. Observacion! La pareja easy_install y virtualenv por ahora no proporciona la biblioteca de desarrollo para gráficas con Python así que, sí la necesitas, se debe instalar por separado pero, ahora en nuestro ambiente de desarrollo.
  • 14. PIL Python Image Library La última version de la biblioteca PIL puede ser descargada desde: y como estamos en Linux descargamos (por supuesto) la versión para todas las plataformas http://pythonware.com/products/pil/
  • 15. Instalar PIL Después de descargar la biblioteca PIL procedemos a descomprimir y posteriormente a instalarlar en nuestro entorno aislado ajha63@kingofpain~$cddownload/ ajha63@kingofpain~$tarxvzfImaging-1.1.7.tar.gz ajha63@kingofpain~$cdImaging-1.1.7/ ajha63@kingofpain~$~/src/plone-dev/bin/pythonsetup.pyinstall
  • 16. ajha63@kingofpain~$~/src/plone-dev/bin/pythonsetup.pyinstall Escribimos la ruta completa de nuestro entorno aislado de desarrollo para instalar con el interprete Python ahí disponible, la biblioteca PIL, de esta manera aseguramos que quede perfectamente enlazada
  • 19. Siempre hay dos Un maestro y un aprendiz Existen dos maneras de iniciar un proyecto con buildout, la primera utilizando zc.buildout para crear nuestra propia receta; la segunda, utilizando una de las tantas recetas buildout. http://www.buildout.org/docs/recipelist.html
  • 20. zc.buildout Nos permite crear un proyecto desde cero dónde nosotros mismos debemos crear nuestro archivo básico de configuranción buildout.cfg y posteriormente ir agregando cada uno de los elementos necesrios para el proyecto
  • 21. ajha63@kingofpain~$~/src/plone-dev/easy_installzc.buildout ajha63@kingofpain~$~/src/plone-dev/buildoutinit buildout init creara lo necesario para iniciar un proyecto, incluyendo un archivo de configuración buildout.cfg
  • 22. buildout recipes Sí no queremos iniciar desde cero nuestro proyecto podemos elegir una de las miles de recetas existentes en el sitio web y asi dar fiel cumplimiento a aquello de no reinventar la rueda www.buildout.org/docs/recipelist
  • 23. Plone recipe Para este caso utilizaremos una receta de plone y luego unos archivos de configuración de buildout para refinar la construcción. Descargamos el archivo de bootstrap de la version 4.2 de plone y lo ubicamos en la raíz de nuestro entorno aislado, una vez ahí, creamos un archivos de configuración buildout buildout.cfg y luego ejecutamos el comando respectivo para iniciar el proceso de construcción bootstrap.py ajha63@kingofpain~$~/src/plone-dev/bin/pythonbootstrap.py--distribute
  • 24. Preguntas...? ...Yo vivo de preguntar, saber no puede ser lujo!
  • 25. Puedes leer esta presentacion en línea en Ohttp://www.alvaro.web.ve/charlasweb/virtualenvbuildout.html http://www.alvaro.web.ve/charlasweb/VirtualenvBuildout.pdf también en http://www.slideshare.net/ajha/
  • 26. Fin Alvaro J. Hernández Arteaga /http://www.alvaro.web.ve @ajha63