leanmind logo leanmind text logo

Blog

BDD

Behaviour-driven Development es una técnica para tomar mejores requisitos de producto.

Creación de un archivo Dockerfile: Guía paso a paso

Por Isaac Aimán

La contenerización de aplicaciones es una práctica muy común en el desarrollo de software moderno. Docker es la herramienta más popular que permite empaquetar aplicaciones y sus dependencias en contenedores, lo que simplifica su implementación y distribución en diferentes entornos.

Uno de los elementos clave en Docker es el archivo Dockerfile, que especifica los pasos necesarios para construir una imagen. En este artículo, exploraremos cómo crear un archivo Dockerfile paso a paso.

¿Qué es un archivo Dockerfile?

Un Dockerfile es un archivo de texto plano. Contiene una serie de instrucciones que Docker utiliza para construir una imagen. Estas instrucciones pueden incluir comandos para copiar archivos, instalar software y configurar variables de entorno, entre otros.

Pasos para crear un archivo Dockerfile:

1. Iniciar con la declaración de la imagen base

Elige la imagen base sobre la cual construirás tu contenedor. Por ejemplo, puedes usar una imagen de Linux como Ubuntu o Alpine, o una imagen específica de un lenguaje de programación como Python, Java, etc. La declaración se realiza con el comando FROM.

FROM ubuntu:latest

2. Especificar el directorio de trabajo (working directory)

Define el directorio dentro del contenedor donde se ejecutarán los comandos subsiguientes. Utiliza el comando WORKDIR para establecer este directorio.

WORKDIR /app

3. Copiar archivos y directorios al contenedor

Usa el comando COPY para transferir archivos y directorios, desde tu sistema de archivos local al sistema de archivos del contenedor.

COPY . .

4. Ejecutar comandos para instalar dependencias y configurar la aplicación

Utiliza comandos como RUN para instalar paquetes, ejecutar comandos y realizar otras acciones necesarias, para preparar el entorno de la aplicación dentro del contenedor.

RUN apt-get update && apt-get install -y python3

5. Exponer puertos (opcional)

Si tu aplicación expone servicios a través de puertos específicos, usa EXPOSE para indicar estos puertos en el contenedor.

EXPOSE 8080

6. Especificar el comando por defecto a ejecutar al iniciar el contenedor

Define el comando por defecto que se ejecutará al iniciar el contenedor. Esto puede ser la ejecución de un servidor web, una aplicación, etc. Emplea CMD para esta tarea.

CMD ["python3", "app.py"]

7. Construir la imagen a partir del Dockerfile

Una vez que hayas creado tu Dockerfile, debes construir la imagen del contenedor con el comando docker build.

docker build -t nombre_de_la_imagen .

Reemplaza nombre_de_la_imagen por el nombre que desees darle a tu imagen.

8. Ejecutar el contenedor basado en la imagen creada

Finalmente, puedes crear un contenedor basado en la imagen que has construido, usando el comando docker run.

docker run -d --name nombre_del_contenedor nombre_de_la_imagen

Reemplaza nombre_del_contenedor por el nombre que quieras asignar a tu contenedor.

¡Ahora tienes un contenedor Docker basado en el Dockerfile creado! Además, podrías subir tu imagen a un repositorio de imágenes como Docker Hub, para que otros usuarios puedan descargarla y ejecutarla en sus sistemas.

Conclusión

Crear un archivo Dockerfile, es fundamental para construir imágenes de contenedor personalizadas y reproducibles. Siguiendo estos pasos básicos, puedes crear un Dockerfile para tu aplicación o servicio, permitiendo su fácil implementación y distribución en diferentes entornos de manera consistente.

Publicado el 27/11/2024 por
Isaac image

Isaac Aimán

¿Quieres más? te invitamos a suscribirte a nuestro boletín para avisarte cada vez que recopilemos contenido de calidad que compartir.

Si disfrutas leyendo nuestro blog, ¿imaginas lo divertido que sería trabajar con nosotros? ¿te gustaría?

Impulsamos el crecimiento profesional de tu equipo de developers