DEV Community

Luis Fernando de León Ramírez
Luis Fernando de León Ramírez

Posted on • Originally published at dev.to

Dockerfile

El traslado de aplicaciones entre ambientes sigue siendo un problema constante, ya que pueden utilizar diversos tipos de servidores, sistemas operativos, dependencias, etc.

Pero esto tiene una solución muy sencilla, el uso de contenedores facilita el traslado de entornos de trabajo generando copias inmutables, las cuales no pueden tener cambios posteriores a su compilación, para realizar esto se hace uso de un archivo de texto plano en el cual se establecen las condiciones para la generación del contenedor.

Dockerfile, este archivo contiene una serie de instrucciones en este caso nuestro robot ensamblador, que se encarga de la construcción del contenedor siguiendo paso a paso las indicaciones proporcionadas, este proceso consiste en la creación de diversas capas que contienen los elementos que serán utilizados.

Es importante conocer estas instrucciones y las acciones que pueden realizar, esto facilitará la administración de la infraestructura de las aplicaciones sin afectar el funcionamiento interno de las aplicaciones, las instrucciones más comunes son:

  • FROM: Define una base para la imagen, normalmente acá se hacen uso de sistemas operativos optimizados, normalmente se dividen en sistemas operativos completos y mínimos
  • RUN: A través de esta instrucción ejecuta un comando sobre una capa nueva, también es posible utilizarla para le ejecución de comandos shell.
  • WORKDIR: Permite situarse sobre un directorio específico.
  • COPY: Copia nuevos archivos a la imagen del contenedor.
  • CMD: Permite que puedan ejecutarse comandos al iniciar el contenedor.

Ahora crearemos un ejemplo sencillo para que puedas interactuar con docker.

NOTA: Para este ejercicio haremos uso del Subsistema de Windows para Linux (WSL) con docker instalado.

  1. Crearemos una carpeta en la cual desarrollaremos la creación de nuestra imagen

  2. Creamos un archivo sin extensión llamado Dockerfile

  3. Agregaremos las siguientes líneas dentro del archivo

    # Usa una imagen mínima - Alpine Linux
    FROM alpine:latest
    
    # Ejecuta un comando para identificar el progreso de la construcción
    RUN echo "Construyendo mi primera imagen desde el Dockerfile..."
    
    # Define el comando por defecto que se ejecutará al iniciar el contenedor
    CMD ["echo", "¡Hola mundo desde mi primer imagen en docker!"]
    
  4. Generaremos la imagen por primera vez a través del siguiente comando:
    docker build -t mi-hola-mundo .

  5. Deberíamos ver algo similar a esta salida.

  1. Verificaremos que la imagen fue creada correctamente a través del siguiente comando:
    Docker images

  2. Deberemos ver nuestra imagen lista para ser utilizada

  3. Ejecutaremos la imagen, cabe mencionar que usaremos la opción --rm para que docker elimine la imagen cuando esta termine de utilizarse.
    docker run --rm mi-hola-mundo

  4. Obtendrás la siguiente salida:

    ¡Hola mundo desde mi primera imagen en docker!

Acá habrás creado tu primera imagen de Docker, esto será el inicio de muchas imágenes que crearas, las cuales podrás modificar para mejores resultados.

¿Quieres saber más de docker?, ingresa al siguiente enlace: Link

En la nube de AWS podrás hacer uso los contenedores que crees en diferentes servicios como ECS y EKS, te invito a que puedas conocer estos servicios
ECS: Link
EKS: Link

Y recuerda que puedes obtener hasta 200 dólares en la capa gratuita de AWS para hacer tus pruebas, si quieres conocer más de esto, ingresa al siguiente enlace: Link

#Containers #Dockerfile #AWS #AWSComunityBuilders #ECS #EKS

Top comments (0)