Cómo crear un paquete con Docker

Cuando hablamos de paquetes, generalmente nos referimos a un elemento de software o a bibliotecas agrupadas para su reutilización a escala. De hecho, un paquete lo pueden utilizar varias aplicaciones importando o ampliando el propio paquete.

Docker es una herramienta que te facilitará la vida como desarrollador. Estamos hablando de un proyecto de código abierto que puede realizar la implementación automática de aplicaciones dentro de contenedores de software, es decir, una plataforma que te permitirá crear, probar e implementar aplicaciones a través de contenedores.


Docker Package: el concepto de «imagen»

El concepto de paquete se puede trasladar a Docker con imágenes o Docker image. Una Docker image suele contener un conjunto de instrucciones para crear contenedores. Los contenedores son instancias de software en ejecución. A partir de la misma imagen debes saber que es posible crear múltiples contenedores.

Por ejemplo, si quisieras crear varias instancias de ngnix para satisfacer diferentes solicitudes HTTP, puedes hacerlo a partir de la misma imagen nginx.

Siguiendo el mismo ejemplo, es posible que te preguntes cómo puedes, a partir de la imagen pública de ngnix, aplicar una configuración personalizada para tu servidor web.

Es muy sencillo: tienes que crear una imagen personalizada en la que, partiendo de la imagen base de nginx, se aplican pasos en los que vas a añadir la configuración personalizada de nginx.

Para ello creamos un nuevo proyecto al que llamaremos myapp. Dentro del proyecto creamos un archivo llamado Dockerfile y una carpeta de configuración con el archivo default.conf.

Docker package

Creemos nuestra configuración dentro del archivo config/default.conf. El ejemplo contiene una configuración ficticia, en la que las solicitudes se envían a un servidor PHP.

Docker package

Ahora creemos los pasos de elaboración de la nueva imagen dentro del Dockerfile.

Docker package

Como puedes ver, realizamos tres pasos, el último de los cuales es totalmente opcional y tiene como único propósito mostrar el comando RUN. Comenzando desde arriba, el comando FROM indica con qué imagen comenzar al crear la nueva imagen. COPY, en cambio, tiene dos partes: el archivo que se va a copiar y su destino final dentro de la imagen. De esta manera copiamos nuestra configuración nginx personalizada a la carpeta apropiada dentro de la imagen.
Además de copiar archivos, puedes ejecutar comandos con el comando RUN. Esto es útil para automatizar la instalación de software adicional o de otro tipo.

Hay muchos otros comandos para el archivo Docker. Puedes encontrar la referencia completa en esta dirección. Haciendo clic aquí puedes encontrar una fuente de gran interés si te interesas de verdad por Docker.


Lanza el Comando Docker Build

Una vez creados los archivos, desde la terminal basta con lanzar el comando docker build para crear la nueva imagen personalizada.

Docker package

Como puedes ver en la imagen, los tres pasos descritos en el Dockerfile se realizan en secuencia. El argumento -t del comando docker build te permite nombrar la imagen. En este punto, nuestra imagen estará disponible para su uso:

Docker package

Con esta miniguía, ahora deberías ser capaz de crear una imagen tú mismo con Docker. ¡Consulta la referencia que mencionamos en el párrafo anterior para obtener más detalles y empieza a experimentar!

Share: Facebook Twitter Linkedin

Comments