云计算-9-Dokcer容器的数据管理
发布于 2024-07-19
813
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
springboot葵花宝典
扫码关注公众号
扫码阅读
手机扫码阅读
云计算-Docker容器的数据管理
什么是数据卷
数据卷是供一个或多个容器使用的特殊目录,绕过UFS(UNIX文件系统),用于数据的持久化存储,独立于容器生命周期。删除容器时不会删除挂载的数据卷,也没有垃圾收集机制处理数据卷。
- 数据卷初始化时会拷贝容器挂载点的数据。
- 数据卷可在容器间共享或重用。
- 数据卷内容可直接修改且不会影响镜像更新。
- 数据卷即使容器删除也能继续存在。
容器的数据卷
为容器添加数据卷
使用 -v 参数可将宿主机路径与容器路径挂载(同步)。例如:
docker run -v /centos/mydata:/data -it centos
这样可将容器内的 /data 目录与宿主机的 /centos/mydata 挂载同步。即使删除容器,数据卷仍然存在。
创建数据卷
数据卷可通过以下命令创建和管理:
docker volume create mycentos docker volume ls docker volume inspect mycentos docker volume rm mycentos
为数据卷添加访问权限
通过 :ro 参数设置数据卷为只读。例如:
docker run -v /centos/mydata:/data:ro -it centos
这样容器内的数据卷目录变为只读,无法创建文件。
使用Dockerfile构建包含数据卷的镜像
在Dockerfile中使用 VOLUME 指令定义数据卷。例如:
FROM nexus.gree.com/centos VOLUME ["/mycentos1","/mycentos2"] CMD /bin/bash
构建镜像后启动容器,会自动创建定义的多个数据卷。
Docker的数据卷容器
什么是数据卷容器
数据卷容器是挂载数据卷的容器,其他容器可通过它实现数据共享。
使用 --volumes-from 参数挂载数据卷容器。例如:
docker run --name mycentos3 -it mycentos:v1 docker run --name mycentos4 --volumes-from mycentos3 -it mycentos:v1
新容器可访问数据卷容器中的数据。
Docker cp指令
Docker cp指令用于容器与宿主机间的数据复制,有两种格式:
docker cp CONTAINER:SRC_PATH DEST_PATH docker cp SRC_PATH CONTAINER:DEST_PATH
示例:
docker cp /mydata/test 8899992:/mydata docker cp 8899992:/mydata /mydata/
选项 -L 可保持源目标中的链接。
springboot葵花宝典
springboot葵花宝典
扫码关注公众号
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
查看方案
springboot葵花宝典的其他文章
打造高效微服务通信——Spring Cloud Ribbon负载均衡的完全指南
Spring Cloud Ribbon作为Spring Cloud生态系统中的一部分,为我们提供了一种简单而强大的负载均衡解决方案。本文将带你深入了解Spring Cloud Ribbon的使用,并介绍如何构建高效的微服务通信
lombok详解和 Lombok 造成的翻车事故,太坑了!
lombok详解和 Lombok 造成的翻车事故,太坑了!
高效构建可靠的分布式系统:掌握Spring Cloud和Eureka的实战技巧
服务注册与发现是指将服务注册到一个中心化的地方(称为注册中心),同时提供查询接口,让服务消费者可以方便地查找并调用服务。通过服务注册与发现机制,服务提供者和服务消费者之间的耦合度得以降低,系统的可扩展性和灵活性也得到提高。
Java BIO实现一个简易的多客户端聊天
Java BIO实现一个简易的多客户端聊天
SpringSecurity快速入门
SpringSecurity快速入门
加入社区微信群
与行业大咖零距离交流学习
PMO实践白皮书
白皮书上线
白皮书上线