Bird
Raised Fist0
Dockerdevops~5 mins

Copying files to and from containers in Docker - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What command copies files from your local machine to a Docker container?
Use docker cp <local_path> <container_id>:<container_path> to copy files from your local machine to a container.
Click to reveal answer
beginner
How do you copy files from a Docker container to your local machine?
Use docker cp <container_id>:<container_path> <local_path> to copy files from a container to your local machine.
Click to reveal answer
beginner
Can you copy directories using docker cp?
Yes, docker cp supports copying entire directories between your local machine and containers.
Click to reveal answer
intermediate
What happens if the destination path does not exist when copying files with docker cp?
Docker will create the destination directory if it does not exist when copying directories. For files, the parent directory must exist.
Click to reveal answer
intermediate
Is it possible to copy files between two running containers directly using docker cp?
No, docker cp works only between your local machine and a container. To copy between containers, copy to local first, then to the other container.
Click to reveal answer
Which command copies a file named app.log from your local machine to the /var/log directory inside a container with ID abc123?
Adocker cp app.log abc123:/var/log
Bdocker copy app.log abc123:/var/log
Cdocker transfer app.log abc123:/var/log
Ddocker move app.log abc123:/var/log
To copy a directory named data from a container xyz789 to your local machine, which command is correct?
Adocker copy xyz789:/data ./data
Bdocker cp ./data xyz789:/data
Cdocker cp xyz789:/data ./data
Ddocker cp data xyz789:/data
What will happen if you try to copy a file to a container path that does not exist?
ADocker will create the path and copy the file
BThe command will fail with an error
CDocker will overwrite the container
DThe file will be copied to the container root directory
Can you use docker cp to copy files directly between two running containers?
ANo, you must copy files to local first
BYes, by specifying both container IDs
CYes, but only for files smaller than 10MB
DNo, copying files is not supported by Docker
Which of these is NOT a valid use of docker cp?
ACopying a file from local to container
BCopying a file from container to local
CCopying a directory from container to local
DCopying files between two containers directly
Explain how to copy a file from your local machine into a running Docker container.
Think about source and destination order in the command.
You got /4 concepts.
    Describe the steps to copy a directory from a Docker container to your local machine.
    Remember the order: container path then local path.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the docker cp command do?
      easy
      A. Copies files or folders between your computer and a Docker container
      B. Copies Docker images between registries
      C. Copies environment variables from a container
      D. Copies container logs to a file

      Solution

      1. Step 1: Understand the purpose of docker cp

        The docker cp command is designed to transfer files or folders between the host machine and a Docker container.
      2. Step 2: Differentiate from other Docker commands

        Other options relate to images, environment variables, or logs, which are not handled by docker cp.
      3. Final Answer:

        Copies files or folders between your computer and a Docker container -> Option A
      4. Quick Check:

        docker cp = copy files/folders [OK]
      Hint: Remember: cp means copy files between host and container [OK]
      Common Mistakes:
      • Confusing docker cp with image transfer commands
      • Thinking it copies logs or environment variables
      • Assuming it copies container settings
      2. Which of the following is the correct syntax to copy a file named app.log from your computer to a container named webapp at path /var/log/?
      easy
      A. docker cp app.log webapp:/var/log/
      B. docker cp webapp:/var/log/ app.log
      C. docker copy app.log webapp:/var/log/
      D. docker cp /var/log/ app.log webapp

      Solution

      1. Step 1: Identify source and destination in docker cp

        The syntax is docker cp [source] [destination]. To copy from host to container, source is local file, destination is container:path.
      2. Step 2: Check each option's order and command correctness

        docker cp app.log webapp:/var/log/ correctly uses docker cp app.log webapp:/var/log/. docker cp webapp:/var/log/ app.log reverses source and destination. docker copy app.log webapp:/var/log/ uses wrong command docker copy. docker cp /var/log/ app.log webapp has wrong order and extra arguments.
      3. Final Answer:

        docker cp app.log webapp:/var/log/ -> Option A
      4. Quick Check:

        docker cp source destination [OK]
      Hint: Source first, then destination with container:path [OK]
      Common Mistakes:
      • Swapping source and destination paths
      • Using wrong command name like docker copy
      • Missing container name or colon separator
      3. Given a container named db with a file /data/dump.sql, what will be the result of running docker cp db:/data/dump.sql ./backup.sql?
      medium
      A. Throws an error because the destination must be a directory
      B. Copies the file dump.sql from the container to the current directory as backup.sql
      C. Copies the file backup.sql from the current directory to the container at /data/dump.sql
      D. Copies the entire /data directory from the container to ./backup.sql

      Solution

      1. Step 1: Analyze the command syntax

        The command copies from container db path /data/dump.sql to local path ./backup.sql. This means copying a single file from container to host with a new name.
      2. Step 2: Understand the effect on local filesystem

        The file dump.sql inside the container is copied and saved locally as backup.sql in the current directory.
      3. Final Answer:

        Copies the file dump.sql from the container to the current directory as backup.sql -> Option B
      4. Quick Check:

        docker cp container:file localfile [OK]
      Hint: Container source first, local destination second [OK]
      Common Mistakes:
      • Confusing source and destination order
      • Assuming destination must be a directory
      • Thinking it copies directories when given a file
      4. You run docker cp mycontainer:/app/config.json ./config.json but get an error: no such file or directory. What is the most likely cause?
      medium
      A. You forgot to specify the container ID instead of name
      B. The destination path ./config.json is invalid on your host
      C. The file /app/config.json does not exist inside the container
      D. You need to run the command inside the container shell

      Solution

      1. Step 1: Understand the error message

        The error "no such file or directory" usually means the source file inside the container does not exist at the specified path.
      2. Step 2: Evaluate other options

        Container name or ID can be used interchangeably if correct. Destination path on host is usually valid if relative path is used. Running inside container shell is not needed for docker cp.
      3. Final Answer:

        The file /app/config.json does not exist inside the container -> Option C
      4. Quick Check:

        Source file missing = error [OK]
      Hint: Check source file path inside container first [OK]
      Common Mistakes:
      • Assuming destination path causes error
      • Thinking container name must be ID only
      • Trying to run docker cp inside container shell
      5. You want to copy a folder named logs from your host to a running container appserver at path /var/app/. Which command correctly copies the entire folder including its contents?
      hard
      A. docker cp logs/* appserver:/var/app/
      B. docker cp logs/ appserver:/var/app/
      C. docker cp logs appserver:/var/app/
      D. docker cp logs appserver:/var/app/logs

      Solution

      1. Step 1: Understand folder copy behavior

        To copy a folder and its contents, specify the folder as source and the full destination path including the folder name if you want it placed inside the container.
      2. Step 2: Analyze each option

        docker cp logs appserver:/var/app/logs copies the entire logs folder into /var/app/logs, preserving folder structure. docker cp logs/ appserver:/var/app/ with trailing slash copies contents of logs into /var/app/ but does not create logs folder inside container. docker cp logs appserver:/var/app/ copies contents of logs into /var/app/ without creating logs folder. docker cp logs/* appserver:/var/app/ copies only files inside logs, not subfolders.
      3. Final Answer:

        docker cp logs appserver:/var/app/logs -> Option D
      4. Quick Check:

        Include folder name in destination to copy folder [OK]
      Hint: Add folder name in destination path to copy folder [OK]
      Common Mistakes:
      • Using trailing slash and losing folder structure
      • Copying only files inside folder, not subfolders
      • Not specifying full destination path including folder 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