GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo anular el punto de entrada mediante Docker Run

Introducción

Punto de entrada y CMD son instrucciones en el Dockerfile que definen el proceso en una imagen de Docker. Puede usar uno o combinar ambos según cómo desee ejecutar su contenedor.

Una diferencia es que, a diferencia de CMD , no puede anular el ENTRYPOINT comando simplemente agregando nuevos parámetros de línea de comando. Para anular ENTRYPOINT, debe modificar docker run comando siguiendo una sintaxis específica.

En este tutorial, aprenderá a anular ENTRYPOINT mediante el comando de ejecución de la ventana acoplable.

Requisitos previos

  • Acceso a una línea de comando
  • Un usuario con sudo privilegios
  • Una instancia de Docker en ejecución
  • Una imagen de Docker existente

Anular ENTRYPOINT con docker run

Para ilustrar cómo anular este comando, vamos a ejecutar un contenedor que repite el mensaje Hello World combinando ENTRYPOINT y CMD en Dockerfile.

En el Dockerfile, el ENTRYPOINT comando define el ejecutable, mientras que CMD establece el parámetro predeterminado.

FROM ubuntu
MAINTAINER sofija
RUN apt-get update
ENTRYPOINT [“echo”, “Hello”]
CMD [“World”]

Si crea una imagen a partir de este archivo y la usa para ejecutar un contenedor Docker, el resultado muestra:

Puede anular fácilmente la CMD predeterminada agregando el parámetro deseado a docker run comando:

sudo docker run [container_name] [new_parameter]

En el siguiente ejemplo, cambiamos el parámetro CMD World , agregando Sofija al mando. Como resultado, la salida muestra Hello Sofija .

Sin embargo, es posible que desee anular el ejecutable predeterminado y, por ejemplo, ejecutar un shell dentro de un contenedor. En ese caso, debe usar el --entrypoint marca y ejecuta el contenedor usando la siguiente sintaxis:

sudo docker run --entrypoint [new_command] [docker_image] [optional:value]

Para anular el mensaje de eco predeterminado en nuestro ejemplo y ejecutar el contenedor de forma interactiva, usamos el comando:

sudo docker run -it --entrypoint /bin/bash [docker_image]

El resultado nos muestra que ahora estamos dentro del contenedor.


Ubuntu
  1. ¿Cómo ejecutar un programa dentro de un contenedor Docker?

  2. ¿Cómo ejecutar Glmark2 en la GPU dedicada?

  3. ¿Cómo ejecutar un script?

  4. Cómo ejecutar un comando en un contenedor Docker en ejecución

  5. Cómo instalar Docker en CentOS

Cómo instalar Gitea en Ubuntu usando Docker

Cómo ejecutar una aplicación .NET en Docker

Cómo ejecutar PHPMyAdmin en un contenedor Docker

Cómo ejecutar Grafana en un contenedor Docker

Cómo ejecutar Jenkins en Docker usando Docker Compose con Volúmenes

Cómo ejecutar contenedores Docker