使用
docker
cp 命令是容器与宿主机之间复制文件的常用方法,其操作类似于
linux
的 cp 命令。1. 将宿主机文件复制到容器:语法为 docker cp [宿主机路径] [容器id/名称]:[容器内目标路径],如 docker cp app.py my_container:/var/www/;2. 从容器复制文件到宿主机:语法顺序相反,如 docker cp my_container:/var/log/app.log ./logs/,可先进入容器查看文件结构;3. 支持复制整个目录,如 docker cp src my_container:/home/app/,复制大文件时速度可能受限于系统性能。
在 Docker 容器和宿主机之间复制文件,最常用的方法就是使用
命令。这个命令类似于 Linux 的
命令,但专门用于在容器和宿主机之间传输数据。
1. 把文件从宿主机复制到容器里
语法格式是这样的:
举个例子,如果你想把本地的
文件复制到名为
的容器中的
目录下,就可以这样写:
注意几点:
容器必须存在(可以是运行中,也可以是停止状态)
路径要写对,特别是容器内部的路径,如果目录不存在会报错
如果你不确定容器名字或 ID,可以用
查看当前运行的容器,或者用
看所有容器
2. 把文件从容器复制回宿主机
反过来也是一样操作,只是顺序换一下:
比如你想把容器里的
拿出来保存到当前目录下的
文件夹:
Docker Sandbox
创建并管理 Docker 沙箱虚拟机环境以安全执行代理。适用于运行不受信任代码、探索包或隔离代理工作负载。支持 Claude、Codex、Copilot、Gemini 和 Kiro 代理,并提供网络代理控制。
下载
这里有个小技巧:如果你不知道容器里具体有什么文件,可以先进入容器看看:
然后用
找到你要复制的文件路径,再退出来执行
。
3. 复制整个目录也一样操作
不管是复制单个文件还是整个目录,
都支持。比如复制整个
文件夹进去:
它会自动把整个目录结构一起复制进去。反过来也一样,你可以从容器里复制出一个目录。
需要注意的是:复制大文件或大量文件时可能会有点慢,这是正常现象,取决于你的系统性能和文件大小。
基本上就这些。只要记住方向和路径就行,
是个简单但非常实用的命令,平时调试、部署经常用得上。
docker cpcpdocker cp [宿主机上的路径] [容器ID或名称]:[容器内的目标路径]app.pymy_container/var/www/docker cp app.py my_container:/var/www/docker psdocker ps -adocker cp [容器ID或名称]:[容器内的文件路径] [宿主机上的目标路径]/var/log/app.loglogsdocker cp my_container:/var/log/app.log ./logs/docker exec -it my_container /bin/bashlsdocker cpdocker cpsrcdocker cp src my_container:/home/app/docker cp