热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

docker容器的数据管理数据卷容器

docker容器的数据管理一:数据卷实现数据的永久化,完全独立于容

docker容器的数据管理

一:数据卷实现数据的永久化,完全独立于容器的生存周期。
数据卷可以在容器之间共享和重用
可以对数据卷里的内容直接进行修改
数据卷的变化不会影响镜像的更新
卷会一直存在,即使挂载数据卷的容器已经被删除

数据卷的使用

为容器添加数据卷
docker run -v 主机目录:容器目录 -it centos /bin/bash/

设置数据卷访问权限为只读
docker run -v 主机目录:容器目录:ro -it centos /bin/bash/

使用dockerfile构建包含数据卷的镜像
dockerfile指令:
VOLUME [“目录”] 目录:例如 /data
使用dockerfile创建的数据卷不能直接映射主机中的目录,而是在使用
dockerfile创建的镜像运行容器时,在主机相应目录下创建随机目录名的目录。
所以使用同一个镜像创建的不同容器,数据卷在主机中映射的目录也不一样。

二:数据卷容器:挂载了数据卷的容器,叫做数据卷容器。其它容器通过挂载这个容器实现数据共享。

先运行一个挂载了数据卷的容器(sjj-jingxiang为:使用dockerfile构建的包含数据卷的镜像)
docker run -it --name sjjrq sjj-jingxiang

运行一个容器并挂载刚才运行的数据卷容器(使用–volumes-from参数)
docker run -it --name ceshi1 --volumes-from sjjrq centos /bin/bash/

再运行一个容器并挂载刚才运行的数据卷容器(使用–volumes-from参数)
docker run -it --name ceshi2 --volumes-from sjjrq centos /bin/bash/
这样容器ceshi1和ceshi2就共享使用相同的数据卷,实现数据共享。
现在即使删除数据卷容器sjjrq,ceshi1和ceshi2这两个容器中的数据卷依然存在并可用。

三:docker数据卷的备份和还原

备份方法:运行一个容器,通过–volumes-from参数挂载需要备份的容器的数据卷,再通过-v参数挂载一个映射
到主机本地备份目录的数据卷,并运行tar或cp命令,把数据卷中的数据备份到备份目录。
docker run --volumes-from ceshi1 -v /home/cs/beifen:/backup --name beifenceshi centos tar cvf /backup/bf.tar /shujujuanmulu
参数说明:
ceshi1:之前运行的挂载了数据卷的容器,现在要备份数据卷中的数据
/home/cs/beifen:主机本地备份目录
/backup:容器中的备份目录
/shujujuanmulu:要备份的容器中的数据卷目录

还原方法:使用解压缩或cp命令
docker run --volumes-from ceshi1 -v /home/cs/beifen:/backup --name beifenceshi centos tar xvf /backup/bf.tar /shujujuanmulu


推荐阅读
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • Python 异步编程:深入理解 asyncio 库(上)
    本文介绍了 Python 3.4 版本引入的标准库 asyncio,该库为异步 IO 提供了强大的支持。我们将探讨为什么需要 asyncio,以及它如何简化并发编程的复杂性,并详细介绍其核心概念和使用方法。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文详细探讨了Netty中Future及其子类的设计与实现,包括其在并发编程中的作用和具体应用场景。我们将介绍Future的继承体系、关键方法的实现细节,并讨论如何通过监听器和回调机制来处理异步任务的结果。 ... [详细]
  • 本文介绍如何在 Unity 的 XML 配置文件中,将参数传递给自定义生命周期管理器的构造函数。我们将详细探讨 CustomLifetimeManager 类的实现及其配置方法。 ... [详细]
  • 实体映射最强工具类:MapStruct真香 ... [详细]
  • Startup 类配置服务和应用的请求管道。Startup类ASP.NETCore应用使用 Startup 类,按照约定命名为 Startup。 Startup 类:可选择性地包括 ... [详细]
  • 自己用过的一些比较有用的css3新属性【HTML】
    web前端|html教程自己用过的一些比较用的css3新属性web前端-html教程css3刚推出不久,虽然大多数的css3属性在很多流行的浏览器中不支持,但我个人觉得还是要尽量开 ... [详细]
  • 本文详细探讨了如何在Docker环境中实现单机部署Redis集群的方法,提供了详细的步骤和配置示例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 2018年3月31日,CSDN、火星财经联合中关村区块链产业联盟等机构举办的2018区块链技术及应用峰会(BTA)核心分会场圆满举行。多位业内顶尖专家深入探讨了区块链的核心技术原理及其在实际业务中的应用。 ... [详细]
  • 如何将本地Docker镜像推送到阿里云容器镜像服务
    本文详细介绍将本地Docker镜像上传至阿里云容器镜像服务的步骤,包括登录、查看镜像列表、推送镜像以及确认上传结果。通过本文,您将掌握如何高效地管理Docker镜像并将其存储在阿里云的镜像仓库中。 ... [详细]
  • Python 内存管理机制详解
    本文深入探讨了Python的内存管理机制,涵盖了垃圾回收、引用计数和内存池机制。通过具体示例和专业解释,帮助读者理解Python如何高效地管理和释放内存资源。 ... [详细]
author-avatar
mobiledu2502916347
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有