Ir al contenido principal

How to execute a command in running Docker container

Sometimes you need to run a particular command on a running container perhaps to check where some files are located or to see their contents, in this quick tips episode, you will learn how. Above is the vid and below you will find some useful notes.
  1. 1.

    Pre-reqs

    • Have Docker installed
  2. 2.

    Start a Docker container

    • For this video I will be using a Jenkins image as an example, so let’s first download it by using docker pull
      docker pull jenkins/jenkins:lts
      
    • Then I will use one of the suggested ways to run the instance and do it in the background. If you don't use pull first this command will work given that it will also try to download the image if it's not found locally.
      docker run -d -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts
      
    • You can check what's the container id, you can just type docker ps for this
      docker ps
      
    • You can execute a command in a running container with the following:
      docker exec -ti CONTAINER_ID COMAND_TO_RUN
      
      To run bash and do stuff inside the container:
      docker exec -ti CONTAINER_ID  /bin/bash
      
      To print the contents of a file, like the one with the initial password for the jenkins image (/var/jenkins_home/secrets/initialAdminPassword):
      docker exec -ti CONTAINER_ID  cat /var/jenkins_home/secrets/initialAdminPassword
      
      To list files and folders:
      docker exec -ti CONTAINER_ID  ls
      
  3. 3.

Comentarios