Comprender la bandera del punto de entrada en Docker

  1. Comprender la instrucción de punto de entrada
  2. Usar la bandera de punto de entrada para pasar argumentos
  3. Conclusión
Comprender la bandera del punto de entrada en Docker

Usamos el indicador de punto de entrada (--entrypoint) en el comando docker run para especificar el comando que se ejecutará cuando iniciemos un contenedor Docker. Esta bandera nos permite personalizar el comportamiento del contenedor y determinar el comando que Docker ejecutará de antemano.

Este artículo discutirá una descripción general de la instrucción del punto de entrada y Docker la usa cuando ejecuta el comando docker run.

Comprender la instrucción de punto de entrada

De forma predeterminada, el punto de entrada para un contenedor Docker es la instrucción CMD en el archivo Docker utilizado para construir la imagen. La instrucción CMD especifica el comando predeterminado que ejecuta Docker cuando inicia el contenedor.

Por ejemplo, el siguiente Dockerfile define el punto de entrada predeterminado para la imagen como el comando echo.

FROM ubuntu:18.04
CMD ["echo", "Hello, World!"]

Podemos usar los comandos docker build y docker run para construir la imagen y ejecutar un contenedor basado en la imagen.

Código de ejemplo:

docker build -t my-image .
docker run my-image

En este ejemplo, el comando docker run iniciará un contenedor basado en la imagen my-image y ejecutará el comando echo como punto de entrada del contenedor. El comando anterior imprimirá el mensaje "¡Hola, mundo!" en la consola.

Sin embargo, si queremos especificar un punto de entrada diferente para el contenedor, podemos usar la opción --entrypoint al ejecutar el comando docker run.

Código de ejemplo:

docker run --entrypoint /bin/sh my-image:latest

Usar la bandera de punto de entrada para pasar argumentos

En este comando, la opción --entrypoint especifica el punto de entrada del contenedor como el comando /bin/sh. Este comando anula el punto de entrada predeterminado especificado en el Dockerfile.

Hace que /bin/sh ejecute el comando cuando Docker inicia el contenedor en lugar del CMD definido dentro del Dockerfile.

Además de especificar el punto de entrada de un contenedor, también podemos usar el indicador de punto de entrada para pasar argumentos al comando de punto de entrada.

Código de ejemplo:

docker run --entrypoint /bin/sh my-image:latest -c

El comando docker run --entrypoint usa la siguiente sintaxis.

docker run --entrypoint <entrypoint.sh> <image:tag> <arg1> <arg2> <arg3>

Conclusión

Ejecutamos el comando con un indicador --entrypoint para ayudar a especificar el shell de comando predeterminado en un contenedor iniciado. Docker lo usa para personalizar el comportamiento del contenedor y ejecutar comandos o scripts específicos en su primer uso.

Este indicador puede ser útil cuando se ejecutan contenedores en un entorno de producción, donde es posible que desee asegurarse de que el contenedor siempre se inicie y ejecute un comando específico.

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