docker容器挂载host宿主机的本地目录,docker容器与宿主机之间互相拷贝文件

参考于:

https://blog.csdn.net/weixin_37773766/article/details/80702926

------------------------------------------------------

1. 创建容器时指定将主机目录挂载到容器中:

docker run -it -v /home/devilmaycry/:/devilmaycry  --name devil_pytorch e30c140136d1  /bin/bash

其中,

-v /home/devilmaycry/:/devilmaycry   是将主机目录/home/devilmaycry/  挂载到容器中的 /devilmaycry 路径下。
--name devil_pytorch                 是将所创建的容器命名为  devil_pytorch
 e30c140136d1                        这里是创建容器所依据的镜像, 是镜像的Id 

所创建的容器中  /devilmaycry 路径下文件:

宿主机 host  的   /home/devilmaycry  路径下的文件:

可以看到文件的挂载成功。

---------------------------------------------------------------------

2.  数据卷 方式

该方式的大致意思就是:创建一个容器时使用其他已有容器的挂载信息。这里的数据卷容器我们假设名为  devil_pytorch,创建方式为上述的方式1,devil_pytorch容器在创建时已经将主机 /home/devilmaycry 文件挂载到了容器的 /devilmaycry 路径下,   这时我们创建容器  devil_pytorch_2  , 创建方式具体如下:

docker run -it --volumes-from devil_pytorch --name devil_pytorch_2 e30c140136d1  /bin/bash
--name devil_pytorch_2                 是将所创建的容器命名为  devil_pytorch_2
 e30c140136d1                          这里是创建容器所依据的镜像, 是镜像的Id 

这里需要区分的参数为:

--volumes-from devil_pytorch            

为新创建的容器指定数据卷。意思就是说新创建的容器其文件挂载的映射关系与已创建容器devil_pytorch相同,
这里就是同样将主机 /home/devilmaycry 文件挂载到新创建容器的 /devilmaycry 路径下。

可以看到新创建容器的 /devilmaycry下文件与主机的 /home/devilmaycry 下相同:



-----------------------------------------------

 docker容器与宿主机之间互相拷贝文件

使用 docker cp  命令,   该命令的使用方式与 标准的linux命令  cp  大致相同。

将docker中文件拷贝到主机中:

docker cp <containerId>:/container_file_path       /host_file_path  
docker cp 977586e250be:/examples   /tmp/
977586e250be 为容器Id,
/examples    为容器内文件路径,
 /tmp/       为拷贝到的主机文件路径。

拷贝到的主机文件路径下,其中文件有:

容器中的文件路径下,其中文件有:

拷贝成功。

----------------------------------------------

将主机中文件拷贝到docker容器中:

与上面的类似,为:

docker cp      /host_file_path     <containerId>:/container_file_path  

将主机文件   copy   到  容器中。

-----------------------------------------------------------------------------

docker容器挂载host宿主机的本地目录,docker容器与宿主机之间互相拷贝文件的更多相关文章

  1. 用Python删除本地目录下某一时间点之前创建的所有文件

    因为工作原因,需要定期清理某个文件夹下面创建时间超过1年的所有文件,所以今天集中学习了一下Python对于本地文件及文件夹的操作.网上 这篇文章 简明扼要地整理出最常见的os方法,抄袭如下: os.l ...

  2. docker挂载本地目录和数据卷容器

    1.docker挂载本地目录 docker可以支持把一个宿主机上的目录挂载到镜像里. 交互模式运行docker run -it -v /home/dock/Downloads:/usr/Downloa ...

  3. [转] docker基础知识之挂载本地目录

    [From] https://blog.csdn.net/huludan/article/details/52641090 https://my.oschina.net/piorcn/blog/324 ...

  4. 转:Docker学习---挂载本地目录

    原文: http://my.oschina.net/piorcn/blog/324202 docker可以支持把一个宿主机上的目录挂载到镜像里 docker run -it -v /home/dock ...

  5. Docker的Mysql数据库:把数据存储在本地目录

    Docker mysql 把数据存储在本地目录,很简单,只需要映射本地目录到容器即可 1.加上-v参数 $ docker run -d -e MYSQL_ROOT_PASSWORD=admin --n ...

  6. Docker Toolbox在window 10 home 下挂载宿主机目录到容器的正确操作

    由于我是window 10 home 而不是 pro版本,只能使用Docker Toolbox,其实docker for window对windows的支持更好,还有GUI,home版本安装Docke ...

  7. [HACK] docker runtime 挂载宿主机目录

    网上看到的很多所谓的挂载都是容器创建时期的挂载,而且参数都不清不楚,整理如下(--name别名自己加): docker run -v /src/path:/dest/path:rw ${IMAGE} ...

  8. Docker容器挂载宿主目录的情形分析

    Docker容器启动的时候,如果要挂载宿主机的一个目录,可以用-v参数指定. 譬如我要启动一个centos容器,宿主机的/test目录挂载到容器的/soft目录,可通过以下方式指定: # docker ...

  9. 宿主机-免密登录Docker容器

    CentOS7 安装Docker 讨论QQ:1586558083 目录 一.检查系统内核 二.安装Docker 2.1 安装 2.2 查看docker版本 2.3 启动docker 三.建立docke ...

  10. 从Docker容器内部,如何连接到本机的本地主机?

    原文 从Docker容器内部,如何连接到本机的本地主机? 编辑:如果您使用的是Docker-for-mac或Docker-for-Windows 18.03+,只需使用主机连接到您的mysql服务即可 ...

随机推荐

  1. HTML 使用动态脚本

    这个 HTML 图片框架 这个HTML支持的脚本属于动态的插件形式的程序 用分段数方式实现动画 1定时器 2函数 计算机有四则运算加减乘除 还有一个是 ^ (shift + 6这个符号是余数,8^3是 ...

  2. Windows Server 2016 离线安装.NET Framework 3.5

    Windows Server 2016 离线安装.NET Framework 3.5 1.双击Windows Server 2016的ISO,会自动挂载,比如F盘. 2.右键开始菜单- 命令提示符(管 ...

  3. C#.NET 循环字符串 V20231123

    C#.NET 循环字符串 V20231123 public static bool IsIllegalOutTradeNo(string OutTradeNo) { foreach (char ite ...

  4. .net core .net6 webapi 连接mysql 8

    1.表结构: CREATE TABLE `table2` ( `id` BIGINT NOT NULL AUTO_INCREMENT, `myname` varchar(255) NOT NULL, ...

  5. node.js常用命令总结

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,用于构建快速.可扩展的网络应用程序.它使用事件驱动.非阻塞 I/O 模型,使其非常适合构建数据密集型的实时应用 ...

  6. MySQL入门到实战详细教程

    MySQL介绍 MySQL是一个开源的关系型数据库管理系统(RDBMS),由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品,它广泛应用于各种Web应用程序和网站,MySQL使用结构化查 ...

  7. Linux 内核:设备树(2)dtb转换成device_node

    Linux 内核:设备树(2)dtb转换成device_node 背景 前面我们了解到dtb的内存分布以后(dtb格式),接下来就来看看内核是如何把设备树解析成所需的device_node. 原文(有 ...

  8. HTTP协议 学习:0-有关概念

    HTTP协议 学习:0-有关概念 背景 实际上,HHTP协议是一种比较简单的协议,它的本质上是一个文本协议,在实际开发中,我们重点关注解析对方发来的内容的过程(字符串匹配). 参考资料: HTTP H ...

  9. 『vulnhub系列』Deathnote-1

    『vulnhub系列』Deathnote-1 下载地址: https://www.vulnhub.com/entry/deathnote-1,739/ 信息搜集: 使用nmap扫描存活主机,发现主机开 ...

  10. 【论文阅读】ICML2020: Can Autonomous Vehicles Identify, Recover From, and Adapt to Distribution Shifts?

    Column: January 6, 2022 7:18 PM Last edited time: January 30, 2022 12:14 AM Sensor/组织: Oxford Status ...