Docker容器数据卷

是什么

docker的理念将运行的环境打包形成容器运行,运行可以伴随容器,但是我们对数据的要求是希望持久化,容器之间可以共享数据,Docker容器产生的数据,如果不通过docker commit生成新的镜像,使得数据作为容器的一部分保存下来,那么当容器被删除之后,数据也就没了,为了能够保存数据,在docker容器中使用卷。卷就是目录或者文件,存在于一个或者多个容器中,但是不属于联合文件系统,因此能够绕过Union File System提供一些用于持久化数据或共享数据的特点

能干嘛?

卷的设计目的就是数据的持久化,完全独立与容器的生命周期,因此Docker不会在容器删除时删除其挂载的数据卷。
特点:
   1. 数据卷可以在容器之间共享和重用数据。
   2. 卷的更改可以直接生效。
   3. 数据卷的更改不会包含在镜像的更新中。
   4. 数据卷的生命周期一直持续到没有容器使用它为止。
容器的持久化
容器间继承+共享数据

数据卷
容器内添加

 1.直接命令添加:
  命令
   docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名


左边为主机,右边为容器

   查看数据卷是否挂载成功。
    使用docker imspect 容器ID,返回的json串有这么一串数据说明挂载成功。


使用命令

绑定成功

 容器和宿主机之间通信
相互读写

容器关闭后在宿主机更改文件,容器再次启动数据仍然同步
关闭容器

宿主机新增文件

容器内任然有数据

命令(带权限)
  docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名  (read only)
  此时主机能对数据卷进行更改,但是容器不能对其更改,只允许读。

DockerFile

hello.java ---- hello.class
hello images ---- images DockerFile
实际就是镜像的描述。

2.DockerFile添加

  • 根目录下新建mydocker文件夹并进入。

  • 在DockerFile中使用VOLUME指令给镜像添加一个或者多个数据卷
    VOLUME["/dataVolumeContainer","dataVolumeContainer2","dataVolumeContainer3"]
      出于可移植和分享的考虑,用-v命令这种方法不能够直在DockerFile中实现,由于宿主机目录是依赖于特定宿主机的,并不能保证所有的宿主机都存在这样的特定目录。

  • File构建


    编写DockerFile文件
  • build后生成镜像-----获得新的镜像


    构建镜像

    也是一层一层的叠加,联合文件系统

  • run容器


    运行容器

    可以看到已经创建两个数据卷,对应主机路径


    主机对应的数据卷

Docker 挂载主机目录Docker出项cannot open directory .:Permission denied
解决办法:在挂载目录后面 多加一个--privileged=true参数即可
docker run -it -v /mydatavolume:/datavolumecontainer --privileged=true 镜像名

数据卷容器

命名的容器挂载数据卷,其他的容器通过挂载这个容器(父容器)实现数据共享,挂载数据卷的容器,称为数据卷容器

  • 以上一步新建的镜像为模板运行容器dc01/dc02/dc03
    他们已经具有容器卷/datavolumecontainer1和/datavolumecontainer2
  • 容器间传递共享(--volumes-from)

      启动父容器dc01--在datavolumecontainer2中新增内容
    启动父容器并新建内容

      dc01/dc02继承自dc01(--volumes-from)
    dc02中有dc01新建的文件

      子容器创建文件父容器查看


    子容器新建的会影响父容器

      删除父容器子容器数据保留,
    image.png

    容器之间配置信息的传递,数据卷的生命周期一直持续到没有容器使用它为止。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,383评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,522评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,852评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,621评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,741评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,929评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,076评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,803评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,265评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,582评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,716评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,395评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,039评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,027评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,488评论 2 361
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,612评论 2 350

推荐阅读更多精彩内容