Si está trabajando en una aplicación dentro de Docker Container, es posible que necesite comandos para instalar paquetes o acceder al sistema de archivos dentro de Docker Container. Ejecutar comandos dentro de Docker Containers debería ser lo suficientemente fácil para usted, ya que debe hacerlo varias veces durante su fase de desarrollo. Docker le ofrece muchas formas de ejecutar comandos dentro de los contenedores.
En este artículo, vamos a discutir diferentes formas de ejecutar cualquier tipo de comando dentro del Docker Container.
Método 1: Usar Bash
Puede acceder directamente al bash del Docker Container y ejecutar comandos allí. Es muy fácil iniciar el bash del Contenedor y puede hacerlo usando este comando.
sudo docker run -it ubuntu bash
El comando anterior ejecuta un contenedor de Ubuntu y activa su bash.
Una vez que tenga acceso al bash, puede comenzar a ejecutar cualquier comando allí. En este ejemplo, realizaremos una ejecución de comando de eco.
echo geeksforgeeks
Método 2: usar el comando exec de Docker
Para ejecutar un comando dentro de un Docker Container usando el comando exec , debe conocer el Id . de contenedor del Docker Container. Puede obtener la identificación del contenedor usando el siguiente comando.
sudo docker container ls
o
sudo docker ps -a
Una vez que tenga la ID del contenedor, puede usar el comando exec de Docker. Pero debe confirmar que el contenedor se está ejecutando antes de poder ejecutar el comando exec. Para iniciar el contenedor, use este comando.
sudo docker start d64b00529582
Después de eso, ejecute el comando exec .
sudo docker exec -it d64b00529582 echo "GeeksforGeeks"
Método 3: mediante el uso de Dockerfile
Cuando está creando una aplicación grande, siempre se recomienda que ejecute sus comandos especificándolos dentro del Dockerfile . Sin embargo, solo debe incluir los comandos dentro del Dockerfile que desea ejecutar mientras construye el Contenedor. Para ejecutar comandos sobre la marcha, puede utilizar cualquiera de los dos métodos anteriores. Para ejecutar comandos a través de Dockerfile , puede especificarlos mediante Docker Run Commands.
FROM ubuntu:latest RUN echo "geeksforgeeks"
Una vez que haya creado el Dockerfile anterior , puede compilar las imágenes con el comando de compilación de Docker.
sudo docker build -t sample-image .
Puede ver que después del paso 2, se ha impreso «geeksforgeeks».