Bird
Raised Fist0
Dockerdevops~20 mins

Running containers in detached mode in Docker - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Detached Mode Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
💻 Command Output
intermediate
2:00remaining
What is the output of running a container with detached mode?
You run the command docker run -d nginx. What will the output be?
Docker
docker run -d nginx
AA long container ID string is printed
BThe nginx welcome page HTML is printed
CAn error message about missing image is shown
DThe container logs start streaming in the terminal
Attempts:
2 left
💡 Hint
Detached mode runs the container in the background and prints the container ID.
🧠 Conceptual
intermediate
2:00remaining
Why use detached mode when running containers?
Which reason best explains why detached mode (-d) is used when running Docker containers?
ATo run the container in the background so the terminal is free for other commands
BTo automatically remove the container after it stops
CTo limit the container's CPU usage
DTo run the container with interactive shell access
Attempts:
2 left
💡 Hint
Detached mode frees up your terminal by running the container in the background.
❓ Troubleshoot
advanced
2:00remaining
Why does docker run -d fail with 'no tty present' error?
You run docker run -d -it ubuntu but get an error: 'the input device is not a TTY'. What is the cause?
AThe Ubuntu image is missing from local cache
BUsing both -d (detached) and -t (allocate tty) together causes conflict
CThe Docker daemon is not running
DThe container port is already in use
Attempts:
2 left
💡 Hint
Detached mode means no terminal attached, but -t requests a terminal.
🔀 Workflow
advanced
3:00remaining
What is the correct sequence to run a container detached and then view its logs?
Arrange the commands in the correct order to run an nginx container detached and then see its logs.
A3,1,2,4
B2,1,3,4
C1,2,3,4
D1,3,2,4
Attempts:
2 left
💡 Hint
You must run the container first, check it's running, then view logs, then stop it.
✅ Best Practice
expert
2:30remaining
Which command correctly runs a container detached with port mapping and environment variable?
You want to run a container detached, map port 8080 on host to 80 in container, and set ENV VAR=prod. Which command is correct?
Adocker run --detach -p 80:8080 -e ENV=prod nginx
Bdocker run -p 8080:80 -d -env ENV=prod nginx
Cdocker run -d -p 8080:80 -e ENV=prod nginx
Ddocker run -d -p 80:8080 --env ENV prod nginx
Attempts:
2 left
💡 Hint
Check the order and syntax of flags for port and environment variables.

Practice

(1/5)
1. What does running a Docker container with the -d option do?
easy
A. Runs the container in detached mode, in the background
B. Runs the container interactively with a terminal
C. Removes the container after it stops
D. Builds a new Docker image from a Dockerfile

Solution

  1. Step 1: Understand the -d option meaning

    The -d flag tells Docker to run the container in detached mode, meaning it runs in the background.
  2. Step 2: Compare with other options

    Other options like interactive mode (-it) keep the container attached to the terminal, which is different from detached mode.
  3. Final Answer:

    Runs the container in detached mode, in the background -> Option A
  4. Quick Check:

    Detached mode = background run [OK]
Hint: Remember: -d means detach and run in background [OK]
Common Mistakes:
  • Confusing -d with -it for interactive mode
  • Thinking -d removes the container
  • Mixing up build and run commands
2. Which of the following is the correct syntax to run a container named myapp in detached mode using the image nginx?
easy
A. docker run nginx -d --name myapp
B. docker run -d --name myapp nginx
C. docker run --detach myapp nginx
D. docker run --name myapp -it nginx

Solution

  1. Step 1: Identify correct order and flags

    The correct syntax places options before the image name. The -d flag enables detached mode, and --name myapp names the container.
  2. Step 2: Validate each option

    docker run -d --name myapp nginx correctly uses docker run -d --name myapp nginx. docker run --detach myapp nginx misplaces arguments, docker run nginx -d --name myapp places flags after image, and docker run --name myapp -it nginx uses interactive mode instead of detached.
  3. Final Answer:

    docker run -d --name myapp nginx -> Option B
  4. Quick Check:

    Options before image, -d for detached [OK]
Hint: Put all flags before the image name in docker run [OK]
Common Mistakes:
  • Placing flags after the image name
  • Using -it instead of -d for detached mode
  • Misusing --detach instead of -d
3. What will be the output of the command docker ps after running docker run -d nginx?
medium
A. Shows the logs of the nginx container
B. Shows no containers because detached mode hides them
C. Shows an error because -d is not valid with nginx
D. Shows the running nginx container with its container ID and status

Solution

  1. Step 1: Understand docker run -d nginx

    This command runs the nginx container in detached mode, so it runs in the background.
  2. Step 2: Understand docker ps output

    The docker ps command lists all running containers, including those running detached. It will show the nginx container with its ID, image, and status.
  3. Final Answer:

    Shows the running nginx container with its container ID and status -> Option D
  4. Quick Check:

    docker ps lists running containers including detached [OK]
Hint: docker ps always lists running containers, detached or not [OK]
Common Mistakes:
  • Thinking detached containers are hidden from docker ps
  • Confusing docker ps with docker logs
  • Assuming -d causes errors with nginx image
4. You ran docker run -d nginx but the container stopped immediately. What is the most likely reason?
medium
A. The -d flag is invalid and caused the container to stop
B. You forgot to add the -it flag for interactive mode
C. The nginx container exited because it has no foreground process
D. Docker daemon is not running

Solution

  1. Step 1: Understand container lifecycle with detached mode

    Detached mode runs containers in background, but if the main process exits immediately, the container stops.
  2. Step 2: Analyze nginx container behavior

    Some nginx images may exit if no foreground process runs. This causes the container to stop right after starting.
  3. Final Answer:

    The nginx container exited because it has no foreground process -> Option C
  4. Quick Check:

    Container stops if main process exits immediately [OK]
Hint: Detached mode won't keep container alive if main process ends [OK]
Common Mistakes:
  • Assuming -d flag causes errors
  • Confusing interactive mode with container lifecycle
  • Not checking if Docker daemon is running
5. You want to run a container in detached mode and later check its logs. Which sequence of commands is correct?
hard
A. docker run -d --name myapp nginx; docker logs myapp
B. docker run --name myapp nginx -d; docker stop myapp
C. docker run -it --name myapp nginx; docker logs myapp
D. docker run -d nginx; docker attach myapp

Solution

  1. Step 1: Run container in detached mode with a name

    Use docker run -d --name myapp nginx to start the container in background with a name for easy reference.
  2. Step 2: Check logs of the running container

    Use docker logs myapp to view the logs of the named container without attaching to it.
  3. Final Answer:

    docker run -d --name myapp nginx; docker logs myapp -> Option A
  4. Quick Check:

    Detached run + named container + logs command [OK]
Hint: Name containers to easily check logs after detached run [OK]
Common Mistakes:
  • Using -it instead of -d for detached mode
  • Trying to attach instead of using logs to view output
  • Placing -d after image 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