Bird
Raised Fist0
Dockerdevops~5 mins

Executing commands with docker exec - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the docker exec command do?
It runs a new command inside a running Docker container without starting a new container.
Click to reveal answer
beginner
How do you run an interactive shell inside a running container named webapp?
Use docker exec -it webapp /bin/bash to open an interactive bash shell inside the container.
Click to reveal answer
intermediate
What does the -it option mean in docker exec?
-i keeps STDIN open, and -t allocates a pseudo-TTY, allowing interactive commands.
Click to reveal answer
beginner
Can you use docker exec to run commands in a stopped container?
No, the container must be running to use docker exec.
Click to reveal answer
beginner
How do you run a one-time command like ls /app inside a container named backend?
Run docker exec backend ls /app to list the contents of the /app directory inside the container.
Click to reveal answer
What is required before you can use docker exec to run a command inside a container?
AThe container must be running
BThe container must be stopped
CDocker daemon must be stopped
DThe container must be paused
Which option allows you to run an interactive shell inside a container?
A-it
B-d
C-rm
D-p
What happens if you run docker exec without specifying a command?
AIt starts a new container
BIt lists running containers
CIt stops the container
DIt returns an error
How do you run a command inside a container named db to check the current directory?
Adocker start db pwd
Bdocker run db pwd
Cdocker exec db pwd
Ddocker stop db pwd
Which of these commands opens an interactive shell inside a container named app?
Adocker run -it app /bin/sh
Bdocker exec -it app /bin/sh
Cdocker exec app ls
Ddocker start -it app
Explain how to use docker exec to run an interactive shell inside a running container.
Think about how to keep input open and allocate a terminal.
You got /4 concepts.
    Describe the limitations of docker exec regarding container state and command execution.
    Consider when and how <code>docker exec</code> works.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the docker exec command do?
      easy
      A. Runs a command inside a running container
      B. Starts a new container from an image
      C. Stops a running container
      D. Builds a Docker image from a Dockerfile

      Solution

      1. Step 1: Understand the purpose of docker exec

        The docker exec command is used to run commands inside an already running container without stopping it.
      2. Step 2: Compare with other Docker commands

        Starting a container is done with docker run, stopping with docker stop, and building images with docker build. These are different from docker exec.
      3. Final Answer:

        Runs a command inside a running container -> Option A
      4. Quick Check:

        docker exec = run command inside container [OK]
      Hint: Remember: exec means execute inside running container [OK]
      Common Mistakes:
      • Confusing exec with docker run
      • Thinking exec stops containers
      • Mixing exec with image build commands
      2. Which of the following is the correct syntax to start an interactive bash shell inside a running container named webapp?
      easy
      A. docker exec webapp bash -it
      B. docker exec bash -it webapp
      C. docker exec -ti bash webapp
      D. docker exec -it webapp bash

      Solution

      1. Step 1: Recall the correct option order for docker exec

        The correct syntax places options like -it immediately after docker exec, then the container name, then the command.
      2. Step 2: Validate each option

        docker exec -it webapp bash correctly uses docker exec -it webapp bash. Options A, B, and C have incorrect order of arguments or options.
      3. Final Answer:

        docker exec -it webapp bash -> Option D
      4. Quick Check:

        Options come right after exec, then container, then command [OK]
      Hint: Options (-it) come right after exec, before container name [OK]
      Common Mistakes:
      • Placing options after container name
      • Swapping container name and command
      • Using wrong option order like -ti instead of -it
      3. Given a running container named db, what will be the output of this command?
      docker exec db ls /var/lib/mysql
      medium
      A. Shows an error because ls is not a valid command
      B. Lists files on the host machine's /var/lib/mysql directory
      C. Lists files and folders inside /var/lib/mysql in the container
      D. Starts a new container named db and runs ls

      Solution

      1. Step 1: Understand what docker exec does with ls /var/lib/mysql

        The command runs ls /var/lib/mysql inside the running container named db, listing files in that path inside the container.
      2. Step 2: Eliminate incorrect options

        ls is a valid command inside Linux containers, so no error. It does not list host files or start a new container.
      3. Final Answer:

        Lists files and folders inside /var/lib/mysql in the container -> Option C
      4. Quick Check:

        docker exec runs command inside container filesystem [OK]
      Hint: Exec runs commands inside container, not on host [OK]
      Common Mistakes:
      • Thinking exec runs commands on host
      • Assuming exec starts new containers
      • Believing ls is invalid inside containers
      4. You run docker exec webapp bash but get the error: the input device is not a TTY. What is the likely fix?
      medium
      A. Stop the container and restart it
      B. Add the -it flags to enable interactive terminal
      C. Use docker run instead of docker exec
      D. Remove the bash command from the exec

      Solution

      1. Step 1: Understand the error about TTY

        The error means the command expects an interactive terminal but none was allocated.
      2. Step 2: Fix by adding -it flags

        Adding -it allocates a pseudo-TTY and keeps stdin open, enabling interactive shells inside containers.
      3. Final Answer:

        Add the -it flags to enable interactive terminal -> Option B
      4. Quick Check:

        Interactive shells need -it flags [OK]
      Hint: Use -it for interactive commands to avoid TTY errors [OK]
      Common Mistakes:
      • Ignoring the need for -it flags
      • Restarting container unnecessarily
      • Confusing exec with run command
      5. You want to check the environment variables inside a running container named api. Which command correctly does this and shows output interactively?
      hard
      A. docker exec -it api env
      B. docker exec env api
      C. docker exec -it env api
      D. docker exec api -it env

      Solution

      1. Step 1: Identify the need for interactive output

        To see environment variables interactively, you need to allocate a TTY and keep stdin open using -it.
      2. Step 2: Check command syntax

        docker exec -it api env correctly places -it after docker exec, then container name api, then command env. Other options have wrong order or missing flags.
      3. Final Answer:

        docker exec -it api env -> Option A
      4. Quick Check:

        Use -it before container name for interactive commands [OK]
      Hint: Place -it right after exec for interactive commands [OK]
      Common Mistakes:
      • Placing -it after container or command
      • Omitting -it for interactive output
      • Swapping command and container name
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard