码迷,mamicode.com
首页 > 其他好文 > 详细

docker数据共享与持久化

时间:2020-03-28 23:31:46      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:利用   持久   linu   com   不能   worker   行操作   数据   方式   

六、数据共享与持久化 类似于 Linux 下对目录或文件进行 mount
  容器中管理数据主要有两种方式:
  数据卷 修改立马生效,一直存在
  数据卷容器 容器之间共享和重用
1、为什么需要数据持久化?
  容器只是一个软件,那么这个软件的东西不应该随着容器的消失而丢失,所以要把例如数据库的数据做备份,但是我们不能每次到容器里进行操作,所以
  
2、挂载数据卷 -v或者-mount
技术图片
3、创建数据卷
  创建 docker volume create my-vol 删除 docker volume rm my-vol
  docker run -d -P --name web -v /src/webap:/opt/webapp centos nginx -x
  挂载一个主机的目录作为数据卷,/src/webap本地目录,到容器/opt/webapp目录
  docker run -d -P --name web -v /src/webap:/opt/webapp:ro centos nginx -x
  挂载一个主机的目录作为数据卷,
  /src/webap本地目录,到容器/opt/webapp目录,加粗的可选只读或者读写,
  如果没有本地目录,那就是在容器创建了一个目录。
  数据卷容器可以实现多个容器共享数据 例如创建数据卷容器,并让两个容器都挂载到这里
docker run -ti -v /dbdata --name dbdata ubuntu 创建
docker run -it --volumes-from dbdata --name db1 ubuntu
docker run -it --volumes-from dbdata --name db2 ubuntu
4、数据卷备份
  这个备份我认为是我们如何利用数据卷进行备份,比如创建一个本地的文件my-vol,那么可以把这个挂载到容器当中,把备份数据备份到这个目录,那么即便是容器消失了,这个本分还是有的,跟容器是分开的。
  
5、数据卷插件介绍
6、持久化实践
7、实际场景落地介绍和剖析

比如备份数据
docker run --volumes-from dbdata -v $(pwd):/backup --name worker ubuntu tar cvf /backup/backup.tar /dbdata
恢复
docker run -v /dbdata --name dbdata2 ubuntu /bin/bash 创建数据卷的容器
docker run --volumes-from dbdata2 -v $(pwd):/backup busybox tar xvf /backup/backup.tar 恢复

docker数据共享与持久化

标签:利用   持久   linu   com   不能   worker   行操作   数据   方式   

原文地址:https://blog.51cto.com/aklaus/2482787

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!