Docker(16)- docker cp 命令详解

简介: Docker(16)- docker cp 命令详解

如果你还想从头学起 Docker,可以看看这个系列的文章哦!

https://www.cnblogs.com/poloyy/category/1870863.html

 

作用


在容器和主机之间复制文件/文件夹

 

语法格式


docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-

docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

 

重点

  • 容器 container 可以是正在运行或已停止的容器
  • SRC_PATH 或 DEST_PATH可以是文件或目录
  • 该命令会假定容器路径相对于容器的 /(根)目录
  • 而主机路径则是相对于执行 docker cp 命令的当前目录

 

options 说明

option 作用
-a 存档模式(复制所有uid / gid信息)
-L  保持源目标中的链接

备注:暂时没发现这两个 options 有啥用

 

SRC_PATH 和 DEST_PATH 的讲解


SRC_PATH 指定一个文件

若 DEST_PATH 不存在

创建 DEST_PATH 所需的文件夹,文件正常保存到 DEST_PATH 中

 

若 DEST_PATH 不存在,并以 / 结尾

错误:目标目录必须存在

 

若 DEST_PATH 存在并且是一个文件

目标被源文件的内容覆盖

 

若 DEST_PATH 存在并且是目录

使用 SRC_PATH 中的基本名称将文件复制到此目录中

 

SRC_PATH指定目录

若 DEST_PATH 不存在

将 DEST_PATH 创建为目录,并将源目录的内容复制到该目录中

 

若 DEST_PATH存在并且是一个文件

错误:无法将目录复制到文件

 

若 DEST_PATH存在并且是目录

  • SRC_PATH 不以 /. 结尾,源目录复制到此目录
  • SRC_PATH 以 /. 结尾,源目录的内容被复制到该目录中

 

实际栗子


从容器复制文件到主机

已存在的目录

docker cp tomcat7:usr/local/tomcat/README.md ./

image.png

不存在的目录

docker cp tomcat7:usr/local/tomcat/README.md test/

image.png

已存在的文件

docker cp tomcat7:usr/local/tomcat/README.md test.txt

 

从主机复制文件到容器

docker cp test.txt tomcat7:/

image.png

从主机复制目录到容器

目标目录不存在

docker cp test tomcat7:test/

image.png

目标是一个文件

docker cp test tomcat7:polo

image.png

目标目录已存在

docker cp test tomcat7:test/

image.png

从容器复制目录到主机

docker cp tomcat7:/usr/local/tomcat/webapps.list /usr/local/

相关文章
|
3月前
|
安全 Docker 容器
|
3月前
|
网络安全 数据安全/隐私保护 Docker
|
1月前
|
NoSQL 关系型数据库 MySQL
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
187 56
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
|
1月前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
271 77
|
15天前
|
Ubuntu NoSQL Linux
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
97 6
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
|
1月前
|
关系型数据库 MySQL Docker
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
120 24
|
2月前
|
Java 应用服务中间件 Linux
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
本文主要讲解了Docker的安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库以及Docker容器虚拟化与传统虚拟机比较。
1819 12
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
|
1月前
|
关系型数据库 MySQL Docker
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
176 6
|
4月前
|
Linux Docker 容器
Docker操作 :容器命令
Docker操作 (四)
216 56
|
3月前
|
存储 监控 安全

热门文章

最新文章