『中级篇』docker的数据持久化存储和数据共享(32)

从这次开始docker的数据持久化存储和数据共享。

回忆下image 和 container的区别
  • image 不能写入数据,container可以写数据

container可以写入数据,执行操作,但是数据只限本个container。

场景问题
  • 误删除container

如果我创建一个mysql的container,这个mysql运行了一年了,里面有很多的数据,在误操作的情况container ,结果一年的数据也就没有了,这是无法接受的。数据为王的年代,数据丢失了很恐怖的。

  • docker引入了持久化的机制Data Volume

图中的程序往两个地方,1. 往对应的layer存储,2.通过外挂载存储的方式

image.png

  • docker持久化数据的方案

    1. 基于本地文件系统的Volume。可以在执行Docker create 或Docker run时,通过-v参数将主机的目录作为容器的数据卷,基本都是用这种方式。
    2. 基于plugin的Volume,支持第三方的存储方案,比如NAS,aws
  • Volume的类型

    1. 收管理的data Volume,由docker后台自动创建,位置是固定,名字是随机的
    2. 绑定挂载的Volume,具体挂载位置可以由用户指定。

PS:源码https://github.com/limingios/docker No.3 方便学习数据持久化存储


往期精彩
  1. docker导学(一)
  2. 容器的技术概述(二)
  3. docker的魅力初体验-5分钟安装wordpress不走弯路(三)
  4. docker官网介绍(四)
  5. 如何在mac上安装docker(五)
  6. 如何在window上安装docker(六)
  7. 如何在mac上通过vagrant安装虚拟机(七)
  8. 如何在window上通过vagrant安装虚拟机(八)
  9. docker-Machine的本地使用(九)
  10. docker-Machine的本地使用(十)
  11. 在linux/mac下通过Docker-Machine在阿里云上的使用(11)
  12. docker架构和底层技术(12)
  13. docker Image概述(13)
  14. 手动建立一个base Image(14)
  15. 什么是Container(15)
  16. 构建自己的Docker镜像(16)
  17. Dockerfile详解(17)
  18. 镜像的发布(18)
  19. Dockerfile实战(19)
  20. 容器的操作(20)
  21. Dockerfile实战CMD和ENTRTYPOINT的配合(21)
  22. 容器的资源限制(22)
  23. docker网络(23)
  24. docker学习必会网络基础(24)
  25. Linux网络命名空间(25)
  26. Docker Bridge详解(26)
  27. 容器之间的Link(27)
  28. 容器的端口映射(28)
  29. 容器网络之host和none(29)
  30. 多容器复杂应用的部署(30)
  31. overlay网络和etcd实现多机的容器通信(31)

    image

    扫描二维码关注公众号,回复: 2731851 查看本文章

猜你喜欢

转载自blog.csdn.net/zhugeaming2018/article/details/81256500
今日推荐