Bird
Raised Fist0
Dockerdevops~10 mins

Why data persistence matters in Docker - Test Your Understanding

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to run a Docker container that keeps data after it stops.

Docker
docker run -d --name mycontainer -v [1]:/data busybox
Drag options to blanks, or click blank then click option'
A/host/data
B/container/data
C/tmp
D/var/log
Attempts:
3 left
💡 Hint
Common Mistakes
Using a container path instead of a host path for volume mapping.
2fill in blank
medium

Complete the command to create a named Docker volume called 'myvol'.

Docker
docker volume [1] myvol
Drag options to blanks, or click blank then click option'
Acreate
Blist
Cinspect
Dremove
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'remove' or 'list' instead of 'create'.
3fill in blank
hard

Fix the error in the Docker run command to properly mount a volume named 'myvol' to '/app/data'.

Docker
docker run -d --name appcontainer -v [1]:/app/data busybox
Drag options to blanks, or click blank then click option'
Avolumes/myvol
Bvolume:myvol
Cmyvol
D/myvol
Attempts:
3 left
💡 Hint
Common Mistakes
Adding slashes or prefixes to the volume name.
4fill in blank
hard

Fill both blanks to create a Docker volume and run a container using it.

Docker
docker volume [1] mydata && docker run -d -v [2]:/data alpine
Drag options to blanks, or click blank then click option'
Acreate
Bmydata
Dremove
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'remove' instead of 'create' or wrong volume name.
5fill in blank
hard

Fill all three blanks to define a Docker Compose service with a volume for data persistence.

Docker
services:
  db:
    image: postgres
    volumes:
      - [1]:[2]
volumes:
  [3]:
Drag options to blanks, or click blank then click option'
Adbdata
B/var/lib/postgresql/data
Dmyvolume
Attempts:
3 left
💡 Hint
Common Mistakes
Using different volume names or wrong container paths.

Practice

(1/5)
1. Why is data persistence important when using Docker containers?
easy
A. Because containers automatically save data to the host system
B. Because data persistence makes containers run faster
C. Because Docker containers never delete data inside them
D. Because containers are temporary and data is lost when they stop

Solution

  1. Step 1: Understand container lifecycle

    Docker containers are designed to be temporary and can be stopped or removed easily.
  2. Step 2: Recognize data loss risk

    When a container stops or is deleted, any data stored inside it is lost unless persisted externally.
  3. Final Answer:

    Because containers are temporary and data is lost when they stop -> Option D
  4. Quick Check:

    Temporary containers lose data without persistence [OK]
Hint: Remember: containers reset, so save data outside [OK]
Common Mistakes:
  • Thinking containers save data automatically
  • Assuming data inside container is permanent
  • Confusing persistence with performance
2. Which Docker command option is used to create a persistent data volume?
easy
A. docker run -v /host/path:/container/path
B. docker run --rm
C. docker run --network=host
D. docker run --memory=512m

Solution

  1. Step 1: Identify volume option

    The -v or --volume flag maps a host directory to a container directory for persistence.
  2. Step 2: Check other options

    --rm removes container after exit, --network=host sets network mode, --memory limits memory; none create persistent storage.
  3. Final Answer:

    docker run -v /host/path:/container/path -> Option A
  4. Quick Check:

    Volume flag = -v [OK]
Hint: Use -v to link host folder for persistence [OK]
Common Mistakes:
  • Using --rm which deletes container and data
  • Confusing network or memory flags with storage
  • Not specifying host path in volume mapping
3. What will happen if you run this command twice without a volume?
docker run --rm alpine sh -c "echo hello > /tmp/file.txt"
medium
A. The file will be lost after the container stops
B. The file will be saved on the host automatically
C. The container will fail to start the second time
D. The file will persist and contain 'hello' after both runs

Solution

  1. Step 1: Analyze container data storage

    Without a volume, data inside the container is stored in the container's writable layer, which is deleted when container is removed.
  2. Step 2: Consider container restart

    Running the command twice creates new containers or overwrites existing ones, losing previous data inside.
  3. Final Answer:

    The file will be lost after the container stops -> Option A
  4. Quick Check:

    No volume means no data persistence [OK]
Hint: No volume means data lost on container stop [OK]
Common Mistakes:
  • Assuming data inside container persists automatically
  • Thinking container names prevent data loss
  • Believing host saves container files without volume
4. You want to persist data but your Docker container loses files after restart. What is the most likely mistake?
medium
A. You used --rm flag when running the container
B. All of the above
C. You mapped a volume but to a wrong host directory
D. You forgot to map a volume with -v option

Solution

  1. Step 1: Check volume mapping

    Not using -v means no data persistence outside container.
  2. Step 2: Consider container removal flags and paths

    --rm deletes container and data on exit; wrong host path means data saved elsewhere.
  3. Final Answer:

    All of the above -> Option B
  4. Quick Check:

    Missing or wrong volume or --rm causes data loss [OK]
Hint: Check volume and flags carefully to keep data [OK]
Common Mistakes:
  • Ignoring --rm deletes container and data
  • Mapping volume to wrong or non-existent host path
  • Assuming volume mapping alone guarantees persistence
5. You have a Docker container that writes logs to /app/logs. How do you ensure logs persist on the host even if the container is removed?
hard
A. Copy logs manually after container stops
B. Run the container with docker run --rm
C. Run the container with docker run -v /host/logs:/app/logs
D. Use docker commit to save container state

Solution

  1. Step 1: Map container logs directory to host

    Using -v /host/logs:/app/logs links container logs to host folder for persistence.
  2. Step 2: Avoid temporary container flags

    --rm deletes container and logs; copying manually is error-prone; docker commit saves image, not files.
  3. Final Answer:

    Run the container with docker run -v /host/logs:/app/logs -> Option C
  4. Quick Check:

    Volume mapping keeps logs safe [OK]
Hint: Map logs folder with -v for safe persistence [OK]
Common Mistakes:
  • Using --rm deletes container and logs
  • Relying on manual copying which is error-prone
  • Misunderstanding docker commit saves files
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