Skip to content

cp

命令结构

docker cp <容器名或ID>:<容器内文件路径> <本地目标路径>
  • docker cp:Docker 的复制命令,用于在容器和主机之间传输文件。
  • docker_ubuntu:/root/test.txt
    • docker_ubuntu:容器的名称(也可以用容器ID替代,如 abcd1234)。
    • /root/test.txt:容器内的文件路径(这里是容器中 root 用户目录下的 test.txt 文件)。
  • .:本地目标路径,表示复制到当前命令行所在的目录。

执行效果

  1. Docker 会从名为 docker_ubuntu 的容器中,找到 /root/test.txt 文件。
  2. 将该文件复制到宿主机的当前目录(.)下,文件名保持为 test.txt

注意事项

  1. 容器状态

    • 即使容器处于停止状态(Exited),docker cp 仍然可以工作。
  2. 路径问题

    • 如果容器内路径或本地路径包含空格或特殊字符,需要用引号包裹,例如:

      docker cp "docker_ubuntu:/root/my file.txt" .
  3. 反向操作

    • 如果要将本地文件复制到容器内,调换参数顺序即可:

      docker cp ./test.txt docker_ubuntu:/root/

示例场景

假设你正在调试一个容器中的应用程序日志:

sh
# 将容器内的日志文件复制到本地分析
docker cp my_app:/var/log/app/error.log ./debug_logs/

# 修改后,将修复后的配置文件传回容器
docker cp ./fixed_config.conf my_app:/etc/app/
sh
docker cp docker_ubuntu:/root/test.txt .