热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

详解复制备份docker容器数据的方法

这篇文章主要介绍了详解复制备份docker容器数据的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

这里以jenkins容器为例,介绍三种方法。

方法一

将容器打包成镜像,这时数据就在镜像中了,im:1.0为容器名,可以随便取

docker commit  im:1.0

重新运行镜像,-v将容器内tmp目录映射到宿主机上的tmp目录

docker run -itd -v /tmp:/tmp im:1.0 // 第一个tmp是宿主机目录,第二个是容器内目录

把 /var/jenkins_home的文件复制到tmp下,注意这里的container name是随机生成的,可以通过docker ps | grep im:1.0查看, -it为交互式终端

docker exec -it  cp -r /var/jenkins_home /tmp // cp 复制粘贴

进入tmp目录,查看是否多了个jenkins_home目录

cd /tmp
ls

进入jenkins_home目录,移动内容到home、srv等目录,因为tmp目录是暂时保存的,下次linux重启就会被删除了,这样数据就可以持久化了。

cd jenkins_home/
mv 

注意数据备份完之后,要删除刚才生成的多余容器哦

docker stop  && docker rm 

方法二

官方文档介绍

执行如下命令,为正在运行的容器名,-v映射,/tmp/backup目录是随便指定的, cvf压缩,/var/jenkins_home为要备份的目录

docker run --rm --volumes-from  -v /tmp/backup:/backup ubuntu tar cvf /backup/backup.tar /var/jenkins_home

然后进入backup目录, 会看到上面压缩的文件

cd tmp/backup/
ls

解压

tar xvf backup.tar

解压完会多一个var文件,进入就可以看到jenkins_home目录,里面内容跟方法一备份的数据一样, 使用mv命令移动到其他目录下

cd var/jenkins_home
mv

相较于第一种方法,使用--rm,我们不需要担心资源的回收。

方法三

在尝试第三种方法之前,我们先进到tmp目录下,把jenkins_home和backup目录删掉

rm -rf jenkins_home/ backup/

查看容器id

docker ps | grep jenkins_im

把容器的jenkins_home目录复制到当前的tmp目录下

docker cp :var/jenkins_home /tmp/

进入tmp查看是否有jenkins_home

cd tmp/
ls

进入jenkins_home, 会看到跟之前备份一样的数据,最后还是一样的操作,把内容移动到其他目录下

mv

到此这篇关于详解复制备份docker容器数据的方法的文章就介绍到这了,更多相关复制备份docker容器数据内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!


推荐阅读
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文探讨了在Linux系统上使用Docker时,通过volume将主机上的HTML5文件挂载到容器内部指定目录时遇到的403错误,并提供了解决方案和详细的操作步骤。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • 科研单位信息系统中的DevOps实践与优化
    本文探讨了某科研单位通过引入云原生平台实现DevOps开发和运维一体化,显著提升了项目交付效率和产品质量。详细介绍了如何在实际项目中应用DevOps理念,解决了传统开发模式下的诸多痛点。 ... [详细]
  • 选择适合生产环境的Docker存储驱动
    本文旨在探讨如何在生产环境中选择合适的Docker存储驱动,并详细介绍不同Linux发行版下的配置方法。通过参考官方文档和兼容性矩阵,提供实用的操作指南。 ... [详细]
  • docker镜像重启_docker怎么启动镜像dock ... [详细]
  • 全能终端工具推荐:高效、免费、易用
    介绍一款备受好评的全能型终端工具——MobaXterm,它不仅功能强大,而且完全免费,适合各类用户使用。 ... [详细]
  • 本文档详细介绍了在 Kubernetes 集群中部署 ETCD 数据库的过程,包括实验环境的准备、ETCD 证书的生成及配置、以及集群的启动与健康检查等关键步骤。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 自己用过的一些比较有用的css3新属性【HTML】
    web前端|html教程自己用过的一些比较用的css3新属性web前端-html教程css3刚推出不久,虽然大多数的css3属性在很多流行的浏览器中不支持,但我个人觉得还是要尽量开 ... [详细]
  • 本文详细探讨了如何在Docker环境中实现单机部署Redis集群的方法,提供了详细的步骤和配置示例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 本文介绍了一种在 MySQL 客户端执行 NOW() 函数时出现时间偏差的问题,并详细描述了如何通过配置文件调整时区设置来解决该问题。演示场景中,假设当前北京时间为2023年2月17日19:31:37,而查询结果显示的时间比实际时间晚8小时。 ... [详细]
  • Docker 自定义网络配置详解
    本文详细介绍如何在 Docker 中自定义网络设置,包括网关和子网地址的配置。通过具体示例展示如何创建和管理自定义网络,以及容器间的通信方式。 ... [详细]
  • 解决Jenkins实例离线问题的新方法
    针对新版Jenkins镜像遇到的‘实例离线’问题,本文提供了一种通过调整Linux系统防火墙设置的有效解决方案,旨在为遇到类似问题的用户提供新的思路和帮助。 ... [详细]
  • 深入理解Docker网络管理
    本文介绍了Docker网络管理的基本概念,包括为什么需要Docker网络管理以及Docker提供的多种网络驱动模式。同时,文章还详细解释了Docker网络相关的命令操作,帮助读者更好地理解和使用Docker网络功能。 ... [详细]
author-avatar
手机用户2502856895
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有