网站首页 > 技术文章 正文
在dokcer的日常使用过程中,我们可能会遇到将宿主机内文件/目录copy到容器内,或者将容器的文件/目录copy到宿主机中,下面我们就来简单的谈一下关于这种情况的两种操作。
1、Docker cp命令:
用于容器与主机之间的数据copy
语法:
docker cp [OPTIONS] container:src_path dest_path
docker cp [OPTIONS] src_path container:dest_path
OPTIONS说明:
-L :保持源目标中的链接
测试:
以tomcat为例:
docker run -d -p 80:8080 hub.c.163.com/library/tomcat
进入容器
docker exec -it edf7 bash
测试:
1.1、将容器内文件copy到主机
以webapps文件夹为例
查看路径
pwd:/usr/local/tomcat/webapps
在主机内执行如下命令
docker cp edf7eac1beb1:/usr/local/tomcat/webapps /tmp
查看tmp目录
如下所示
1.2、将主机内文件copy到容器
在odysee家目录创建一个localFile文件
将localFile copy到/usr/local/tomcat/
docker cp localFile edf7eac1beb1:/usr/local/tomcat/
切换到容器内查看
如下图所示
2、 -v挂载主机数据卷到容器
可以直接挂载宿主机文件或目录到容器里,可以理解为目录映射。这样就可以让所有的容器共享宿主机数据,从而只需要改变宿主机的数据源就能够影响到所有的容器数据。
映射关系:
宿主机文件/目录:容器里对应的文件/目录
注意:
宿主机上的文件/目录是要提前创建
容器里对应的文件/目录会自动创建
2.1、创建挂载目录
在odysee家目录下创建一个vol目录
在目录里创建一个文件volFile并输入一句话
2.2、启动容器
这里的image以centos为例
docker run -i -t --name vol
-v /home/odysee/vol:/etc/vol
centos /bin/bash
查看容器内volFile文件
将volFile copy到容器/根下
将容器内的tmp/yum.log文件copy到etc/vol/文件下
在宿主机内查看
测试成功
欢迎大家给予宝贵的意见或者建议。
欢迎大家补充或者共享一些其他的方法。
感谢支持。
猜你喜欢
- 2024-09-12 64.手把手使用Docker
- 2024-09-12 kubernetes基础知识之docker容器和镜像
- 2024-09-12 docker 安装MongoDB(docker 安装mongodb4.4.4)
- 2024-09-12 Docker入门与实践:容器操作方法详细介绍
- 2024-09-12 Docker实战四之Docker 容器使用(docker 容器运行命令)
- 2024-09-12 【docker】:全面认识Docker和基本指令
- 2024-09-12 Docker 学习小总结(docker基础教程)
- 2024-09-12 运行Docker遇到权限问题应该如何处理?
- 2024-09-12 史上超全!Docker命令全集,值得收藏
- 2024-09-12 容器化学习-docker2生成镜像(docker手动生成镜像)
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- c语言min函数头文件 (77)
- asynccallback (87)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 无效的列索引 (74)