docker cp用于宿主机与容器间复制文件或目录,不依赖容器运行状态;语法为docker cp [源路径] [目标路径],路径写法决定方向,支持相对/绝对路径,容器内路径须以/开头。
docker cp 命令用于在宿主机和容器之间复制文件或目录,不依赖容器是否正在运行(但需容器存在),操作简单直接。
基本语法与方向说明
命令格式统一为:
docker cp [源路径] [目标路径]
关键在于路径写法决定传输方向:
- 宿主机 → 容器:
docker cp /path/on/host container_name_or_id:/path/in/container - 容器 → 宿主机:
docker cp container_name_or_id:/path/in/container /path/on/host - 支持相对路径(如
./config.yml)和绝对路径(如/home/user/app/) - 容器内路径必须使用正斜杠
/,且以/开头(Linux 风格路径)
常见实用场景示例
✅ 把本地配置文件传进容器:
docker cp ./nginx.conf my-nginx:/etc/nginx/nginx.conf
✅ 从容器中拉出日志文件到当前目录:
MiniMax 图片理解 + 网络搜索 MCP 工具。适配 Docker 环境(极空间等),支持图片 OCR 识别、图像内容理解、网络搜索。API Key 安全存储在本地 credentials 文件,不暴露在代码中。
docker cp my-app:/app/logs/error.log ./error.log
✅ 复制整个本地文件夹到容器指定目录(自动创建目标目录):
docker cp ./data/ web-server:/var/www/html/data/
⚠️ 注意:目标路径末尾加不加 / 会影响行为 —— 加 / 表示“放入该目录”,不加则表示“重命名为该文件名”。
注意事项与排错提示
- 容器必须已存在(可以是停止状态),但不能是已删除的容器
- 若目标路径在容器中不存在,docker cp 会自动创建父目录,但不会自动创建深层嵌套的中间目录(取决于 Docker 版本,建议确保目标路径上级目录存在)
- 权限问题:复制进容器的文件默认属主是容器内的 root,应用可能需要手动
chown(可在容器内执行或用docker exec配合) - 无法跨容器直接复制,必须经由宿主机中转
- 不支持通配符(如
*.log),需先打包或逐个复制










