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
OpenWrt Docker环境下部署多... n1刷openwrt上面的DOCKER有什么用独立的程序和结构。Docker将应...

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

3
Java程序员简历IT技能描述指南:精准... Java程序员简历IT技能怎么写Java程序员简历中的技能描述应该具体、有针对性...

4
Redis分布式锁事故复盘:揭秘超卖背后... 一次由Redis分布式锁造成的重大事故,避免以后踩坑!使用基于Redis的分布式...

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

6
Redisson分布式锁原理解析与微服务... Redis:Redisson看门狗续锁实现分布式锁的原理,及如何避坑在微服务环境...

7
Redis Lua 脚本:原子执行与分布... redis lua脚本原子性如何保证REDIS的LUA脚本执行是原子的,即在执行...

8
Python while循环应用:模拟小... python里面如何用while循环做这样一道数学题小球从一百米高空坠落每次反弹...

9
UOSLinux/统信系统Docker容... Linux&#47;统信UOS系统上面设置docker容器开机自启动当服...

10
构建个人在线图书馆:简单书库管理与Doc... 搭建个人图书馆!一个简单的在线个人书库构建一个简单的在线图书馆,您可以使用在线个...