Combine los comandos de compilación y ejecución en Docker

  1. Propósito de los comandos docker build y docker run
  2. Combinar comandos de Docker usando el operador de doble ampersand (&&)
  3. Combine los comandos de Docker mediante la sustitución de comandos
  4. Conclusión
Combine los comandos de compilación y ejecución en Docker

Si automatizamos la creación de contenedores mediante un Dockerfile, solemos utilizar los comandos docker build y run. Sin embargo, normalmente combinamos la mayoría de los comandos en una sola ejecución para despejar el repositorio de imágenes local.

Este artículo discutirá la combinación de comandos como docker build y run en una sola línea.

Propósito de los comandos docker build y docker run

Usar los comandos docker build y docker run juntos puede ser útil en varios escenarios. Por ejemplo, si estamos desarrollando una nueva aplicación y queremos probarla rápidamente, puede usar estos comandos para compilarla y ejecutarla en un contenedor.

Esto puede ahorrarle tiempo y facilitar la prueba de su aplicación.

El comando docker build lee las instrucciones en el Dockerfile y las usa para crear la imagen de Docker. Si ya hemos construido nuestro Dockerfile, podemos usar el comando docker run -it para ejecutar la imagen.

Este comando crea un nuevo contenedor a partir de la imagen y lo ejecuta en modo interactivo.

Este modo significa que podemos interactuar con el contenedor y ejecutar comandos en su interior. Aunque podemos ejecutarlos por separado, hay un par de formas de ejecutarlos en una sola línea.

Combinar comandos de Docker usando el operador de doble ampersand (&&)

Una forma de combinar los comandos docker build y docker run -it es usar el indicador --rm con el comando docker run. Esta bandera indica a Docker que elimine el contenedor cuando sale automáticamente.

Esta bandera significa que podemos ejecutar los comandos docker build y docker run en una línea como esta:

docker build -t my-image . && docker run --rm -it my-image

En este ejemplo, mi-imagen es el nombre de la imagen de Docker que se creará y ejecutará. El punto (.) al final del comando docker build indica que el Dockerfile está en el directorio actual.

Una vez que ejecutemos este comando, Docker construirá la imagen siguiendo las instrucciones del Dockerfile y luego ejecutará la imagen en un nuevo contenedor. La bandera --rm asegura que eliminamos automáticamente el contenedor cuando sale.

Combine los comandos de Docker mediante la sustitución de comandos

Otro ejemplo de combinar los dos comandos es anidarlos con el operador del signo de dólar ($). El comando debería ser algo como esto:

docker run --rm -it $(docker build -t my-image)

La sintaxis $(...) se denomina sustitución de comandos. Usamos la sustitución de comandos porque Docker usa la salida de un comando como argumento para otro comando.

En el caso anterior, Docker ejecuta primero el comando docker build -t my-image y usa la salida (el ID de la imagen de Docker recién creada) como argumento para el comando docker run. Al usar la sustitución, Docker hace que el comando docker run ejecute la imagen de Docker con la ID devuelta por el comando docker build.

Además, si implementamos una aplicación en un entorno de producción, podemos usar este método para crear la imagen de Docker y ejecutarla en el servidor de producción. Esto puede ayudar a garantizar que su aplicación se ejecute en un entorno coherente y facilitar su administración y mantenimiento.

Conclusión

En general, los comandos docker build y docker run son herramientas poderosas para crear y ejecutar imágenes de Docker. La combinación de estos comandos nos permite crear y ejecutar una imagen de Docker en una sola línea de código, lo que facilita y agiliza el desarrollo, la prueba y la implementación de sus aplicaciones.

Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn