- docker cp:容器和本地文件系统之间复制文件/文件夹
docker cp:容器和本地文件系统之间复制文件/文件夹官放文档地址:https://docs.docker.com/engine/reference/commandline/cp/
#语法:SRC_PATH容器文件PATH DEST_PATH本机PATH docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
| OPTIONS可选项 | 作用 |
|---|---|
| –archive , -a | 存档模式(复制所有uid/gid信息) |
| –follow-link , -L | 始终跟随SRC_PATH中的符号链接 |
这个docker cp工具复制SRC_PATH到DEST_PATH。您可以从容器的文件系统复制到本地机器,也可以从本地文件系统复制到容器。如果-为SRC_PATH或DEST_PATH,还可以从STDIN(标准输入流、标准输入设备)或去STDOUT(标准输出流、标准输出设备)。这个容器可以是正在运行或停止的容器。这个SRC_PATH或DEST_PATH可以是文件或目录。
这个docker cp命令假定容器路径相对于容器的/(根目录)这意味着提供初始正斜杠是可选的;命令将compassionate_darwin:/tmp/foo/myfile.txt和compassionate_darwin:tmp/foo/myfile.txt完全一样。本地机器路径可以是绝对值或相对值。该命令将本地机器的相对路径解释为相对于当前工作目录docker cp都跑了。
这个cp命令的行为类似于unix。cp -a命令中的命令,即递归复制目录,并在可能的情况下保留权限。所有权设置为目标处的用户和主组。例如,复制到容器的文件是用UID:GID根用户。复制到本地计算机的文件将使用UID:GID调用docker cp命令。但是,如果指定-a选项,docker cp将所有权设置为源上的用户和主组。如果指定-L选项,docker cp中的任何符号链接。SRC_PATH. docker cp是吗?不创建父目录DEST_PATH如果他们不存在的话。
[haokai@localhost ~]$ sudo docker exec -it 10c70f60dcde sh # cd .. # ls bin etc games include lib man openjdk-11 sbin share src tomcat # cd .. # ls aaa.sql bin games include lib local sbin share src # pwd /usr # exit [haokai@localhost ~]$ sudo docker cp 10c70f60dcde:/usr/aaa.sql /home [haokai@localhost ~]$ cd /home [haokai@localhost home]$ ll total 4 -rw-r--r--. 1 root root 0 Nov 4 16:54 aaa.sql drwx------. 16 haokai haokai 4096 Nov 4 10:15 haokai [haokai@localhost home]$



