命令格式

bash
docker cp [OPTIONS] SRC_PATH CONTAINER:DEST_PATH

参数说明

  • SRC_PATH: 宿主机文件/目录路径(绝对路径推荐)
  • CONTAINER: 容器名称或ID
  • DEST_PATH: 容器内目标路径

使用场景

1. 复制单个文件

bash
docker cp /host/path/file.txt my-container:/container/path/

⚠️ 当目标路径为目录时,必须加斜杠/结尾

2. 复制多个文件

bash
docker cp /host/{file1.txt,file2.jpg} my-container:/data/
docker cp "/host/*.log" my-container:/logs/

❗ 使用通配符时需加引号避免shell自动扩展

3. 复制整个目录

bash
docker cp /host/folder/ my-container:/target/path/

🔍 带斜杠/复制目录内容,不带斜杠复制目录本身

注意事项

  1. 容器无需处于运行状态
  2. 默认使用root权限操作容器文件系统
  3. -L参数可跟随符号链接(Docker 17.05+)
  4. 反向操作:docker cp CONTAINER:SRC_PATH DEST_PATH

常见问题

Q:报错"no such directory"

确保容器路径存在或使用绝对路径:
bash
docker exec my-container mkdir -p /target/path

Q:权限不足

建议指定用户:
bash
docker exec -u root my-container chmod 777 /target

分类: 暂无分类 标签: Docker容器操作文件管理docker cp

评论

全部评论 1

  1. 哈哈
    哈哈
    FireFox MacOS
    不错[星星眼][星星眼][呲牙]

目录