Docker文件拷贝指南:容器与主机间数据交换教程

创始人
2024-12-15 08:37:32
0 次浏览
0 评论

如何在Docker容器内外互相拷贝数据

将文件从容器复制到主机[plain]viewplaincopydockercp:/file/path/inside/container/host/path/target将文件从主机复制到容器1.使用-v将给定主机卷挂载到容器。
[clear]viewplaincopydockerrun-v/via/ad/hostdir:/mnt$包含容器中cp/mnt/sourcefile/via/ad/destfile2的副本。
[plain]viewplaincopy$dockerpsB.获取整个容器的id[plain]view$dockerinspect-f'{{.Id}}'持有级别A或idC的名称。
host/var/lib/docker/aufs/mnt/FULL_CONTAINER_ID/PATH-NEW-FILE或$sudocppath-file-host/var/lib/docker/devicemapper/mnt/123abc<>/rootfs/root示例:[普通]viewplaincopy$dockerpsCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMESd8e703d7e303solidleon/ssh:最新/usr/sbin/sshd-Dcranky_pare$dockerinspect-f'{{.Id}}'cranky_pareor$dockerinspect-f'{{.Id}}'d8e703d7e303d8e703d7e3039a6df6d01bd7fb58d1882e592a85059eb16c4b83cf91847f88e5$sudocpfile.txt/var/lib/docker/aufs/mnt/**d8e703d7e3039a6df6d01bd7fb58d1882e592a85059eb16c4b83cf91847f88e53。
to/container/file'bash-c'cat>/path/to/container/file'

容器间共享数据

要在主机和容器之间共享数据,可以使用dockercp命令,也可以使用主机的cp命令将目标指向容器安装的文件夹。
使用dockercp时,目标可以是容器挂载点,如下:

通过bindvolume挂载同一主机目录,可以实现容器之间的数据共享

使用数据共享卷创建容器Volume

检查安装状态,有两种挂载方式

其他容器可以通过--volumes-from使用vc_dataVolumecontainer

运行三个httpd,可以通过检查查看各个挂载状态。
使用curl测试它们是否使用通过卷安装的相同Index.html

datapackedvolumecontainer文件。
文件仍然需要上传到主机上再次修改,可以通过datapackedvolumecotainer上传配置,这样可以减少对主机的依赖。

首先创建一个目录,并在其中创建一个Dockerfile。
将htdocs中的数据复制到/usr/local/apache2/htdocsVOLUME语句与dockerrun中的-v效果相同,创建卷。

Dockerfile目录结构如下,htdocs包含一个Index.html文件

创建镜像

创建容器

运行新容器并使用--volumes-from=vc_data

使用curl进行验证

热门文章
1
Redisson分布式锁深度解析:Red... Redis实现分布式锁+Redisson源码解析在某些场景下,多个进程需要以互斥...

2
深度解析Docker:容器技术提升应用部... docker是什么Docker是一种强大的开源容器技术,它将应用程序及其所有依赖...

3
Docker dockercp命令:容器... Dockercp命令详解:在Docker容器和主机之间复制文件&#47;...

4
Redis KEY模糊查询优化策略及SC... RedisKEY*模糊查询导致交互速度慢、阻塞其他Redis操作在Redis中使...

5
Redisson深度解析:分布式锁实战与... Redis:redis分布式锁实战之redisson在分布式环境中;个体锁不能再...

6
Python float()函数:Web... Pythonfloat(input())的用法,web中的应用float(inp...

7
Java单例模式深入解析及实例代码分享 单例模式单例模式实例在Java中,单例模式确保类只存在一个实例。该模式的主要作用...

8
Docker核心原理解析:深入理解Nam... DOCKER总结Docker是一个开源应用程序容器引擎,允许开发人员将其应用程序...

9
C语言字符串输出技巧:指针与数组首地址的... C语言字符串输出Chara[]="aaaaa";printf...

10
200本Java开发精选书籍免费分享!附... Java开发书籍推荐(200多本)我整理了一份Java开发的邮件资源,一共大概2...