Frasco de Python en Docker

Frasco De Python En Docker



En este tutorial, aprenderemos cómo contener una aplicación Python Flask usando Docker.

La contenedorización es una característica épica que nos permite a los desarrolladores empaquetar una aplicación junto con las dependencias requeridas en una sola unidad. Luego podemos mover el contenedor e implementar la aplicación en distintos entornos sin tener que preocuparnos por la compatibilidad.

¿Qué es el matraz?

Flask es un marco micro web minimalista y liviano para Python. Proporciona las funciones y bibliotecas esenciales necesarias para crear una aplicación web ligera utilizando el lenguaje Python.







Flask sigue la interfaz de puerta de enlace del servidor web o estándar WSGI que nos permite incorporar un diseño minimalista con un patrón flexible que puede manejar la solicitud HTTP y otras características. Por ejemplo, Flask admite funciones web como enrutamiento, bases de datos y más.



Requisitos previos:

Para seguir el código y los comandos que se proporcionan en este tutorial, asegúrese de tener las siguientes herramientas:



  1. Intérprete de Python instalado en su máquina (se recomienda la versión 3.11 y superior)
  2. Motor Docker instalado en la máquina host (se recomienda la versión 23 y superior)
  3. Un editor de texto o IDE de su elección

Una vez cumplidos los requisitos dados, podemos continuar con este tutorial.





Crear la aplicación Flask

Como puedes adivinar, el primer paso es crear la aplicación Python que deseamos contener. Para nuestro caso, lo demostramos con una aplicación minimalista que imprime 'hola mundo'.

Cree un nuevo directorio para almacenar el código fuente de su proyecto y cree un archivo Python llamado 'app.py'.



Edite 'app.py' con su editor de texto o IDE favorito y agregue el código para su aplicación de la siguiente manera:

de matraz importar Matraz

aplicación = Matraz ( __nombre__ )
@ aplicación. ruta ( '/' )
definición Hola Mundo ( ) :
  devolver '

¡Hola mundo!

'

Crear un archivo Docker

A continuación, debemos definir las instrucciones que nos permitan empaquetar la aplicación como una imagen de Docker. Usamos el Dockerfile que contiene todas las instrucciones y herramientas para configurar la imagen.

En el mismo directorio que “hello.py”, cree un nuevo archivo llamado “Dockerfile” sin extensión. Ejecute el siguiente comando:

$ toque Dockerfile

Edite el archivo y agregue el código de la siguiente manera:

Utilice la imagen oficial de Python como imagen base.

DESDE pitón: 3.12 -rc-delgado
DIRTRABAJO /aplicación
COPIAR . /aplicación
# Instalar matraz
RUN pip install --no-cache- -r requisitos. TXT
# Exponer el puerto 5000 para la aplicación Flask
EXPONER 5000
# ejecutar la aplicación Flask
CMD [ 'pitón' , 'app.py' ]

El Dockerfile anterior realiza las siguientes operaciones:

  • Utiliza la imagen delgada oficial de Python 3.12 como imagen base
  • Establece el directorio de trabajo dentro del contenedor en '/app'
  • Copia el contenido del directorio del proyecto en el contenedor.
  • Instala Flask y cualquier otra dependencia ejecutando 'pip install' usando el archivo 'requirements.txt'
  • Expone el puerto 5000 para la aplicación Flask.
  • Define el comando para ejecutar la aplicación Flask.

Asegúrese de que el archivo 'requirements.txt' exista en el directorio del proyecto y agregue el contenido del archivo como se muestra a continuación:

Matraz == 2.3.3

En este caso especificamos que deseamos instalar la versión 2.3.3 de Flask.

Construya la imagen de Docker

Ahora que tenemos la aplicación Flask y Dockerfile listos, podemos continuar y construir la imagen con el siguiente comando:

docker build -t flask-docker-app.

Asegúrese de estar en el directorio del proyecto antes de ejecutar el comando anterior. Puede reemplazar la aplicación flask-docker con el nombre que desea asignar a su imagen.

Ejecute el contenedor Docker

Con la imagen de Docker creada, podemos ejecutar el contenedor basado en la imagen usando el comando 'docker run' de la siguiente manera:

ejecución de la ventana acoplable -p 5000 : 5000 aplicación-docker-flask

Esto debería crear un contenedor y asignar el puerto 5000 del contenedor al puerto 5000 en el sistema host.

Una vez ejecutado, abra el navegador y navegue hasta http://localhost:5000 .

Deberías ver el mensaje '¡Hola, mundo!' mensaje de la aplicación Flask.

Conclusión

En este tutorial, aprendió cómo contener una aplicación Python Flask simple usando Docker.