Repolode
pex-tool

pex-tool/pex

Herramienta de Python que empaqueta aplicaciones y sus dependencias en archivos .pex ejecutables, similares a un virtualenv portable.

Estrellas
4,230
Forks
321
Issues abiertos
58
Último commit
hace 3 horas

¿Qué es?

Pex genera archivos .pex (Python EXecutable), entornos de Python autocontenidos que se ejecutan como cualquier otro ejecutable. La idea amplía PEP 441 y busca que desplegar una aplicación de Python sea tan sencillo como copiar un archivo. Un solo archivo .pex puede incluir distribuciones específicas para varias plataformas, de modo que un mismo archivo pueda ejecutarse en distintos sistemas operativos.

El comando pex crea estos archivos a partir de requisitos indicados en la línea de comandos, de la salida de pip freeze o de los puntos de entrada console_scripts de un proyecto. También puede iniciar entornos efímeros; por ejemplo, permite ejecutar un script con Flask disponible sin crear un virtualenv persistente. Al crear el archivo, se pueden seleccionar intérpretes específicos, como PyPy.

Se puede instalar con pip. En el sitio de documentación del proyecto también se explica cómo usarlo e integrarlo en procesos de compilación con herramientas como Pants y Buck.

Funciones clave

  • 01Crea entornos ejecutables de Python en un solo archivo a partir de dependencias o archivos de requisitos.
  • 02Puede incluir distribuciones específicas para distintas plataformas para que un mismo archivo .pex se ejecute en varios sistemas operativos.
  • 03Expone puntos de entrada console_scripts como ejecutables independientes.
  • 04Permite iniciar entornos efímeros para hacer pruebas rápidas.
  • 05Permite seleccionar un intérprete específico, como PyPy, al crear el archivo.

Casos de uso

  • Distribuir una herramienta de línea de comandos o un servicio de Python como un solo archivo en servidores, sin necesidad de instalarlo por separado.
  • Convertir un virtualenv funcional en un archivo portable usando como entrada la salida de pip freeze.
  • Ejecutar rápidamente un script con algunas bibliotecas sin crear un entorno para el proyecto.
  • Integrar compilaciones reproducibles de Python en sistemas de compilación como Pants o Buck.

Inicio rápido

  1. 1

    Instala pex desde PyPI

    pip install pex
  2. 2

    Crea un archivo pex que incluya requests, flask y psutil

    pex requests flask 'psutil>2,<3' -o my_app.pex

Temas

Preguntas frecuentes

¿Qué es pex?
Herramienta de Python que empaqueta aplicaciones y sus dependencias en archivos .pex ejecutables, similares a un virtualenv portable. Pex genera archivos .pex (Python EXecutable), entornos de Python autocontenidos que se ejecutan como cualquier otro ejecutable. La idea amplía PEP 441 y busca que desplegar una aplicación de Python sea tan sencillo como copiar un archivo. Un solo archivo .pex puede incluir distribuciones específicas para varias plataformas, de modo que un mismo archivo pueda ejecutarse en distintos sistemas operativos.
¿pex es gratuito? ¿Qué licencia tiene?
pex es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿pex sigue mantenido?
Mantenimiento activo. El último commit de pex fue el 24 oct 2026.
¿Para qué puedo usar pex?
Distribuir una herramienta de línea de comandos o un servicio de Python como un solo archivo en servidores, sin necesidad de instalarlo por separado. Convertir un virtualenv funcional en un archivo portable usando como entrada la salida de pip freeze. Ejecutar rápidamente un script con algunas bibliotecas sin crear un entorno para el proyecto. Integrar compilaciones reproducibles de Python en sistemas de compilación como Pants o Buck.
¿Cómo se instala pex?
Instala pex desde PyPI: pip install pex Crea un archivo pex que incluya requests, flask y psutil: pex requests flask 'psutil>2,<3' -o my_app.pex
¿Dónde consigo pex?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/pex-tool/pex

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados