zoukankan      html  css  js  c++  java
  • docker随笔2--数据卷

    1.背景:

    容器是镜像的实例,是一个运行的应用,应用在运行过程中会产生数据,需要对容器内的数据进行操作。

    2.容器管理数据的两种方式:

      数据卷

      数据卷容器。

    3.数据卷:

    3-1:什么是数据卷:

    数据卷是一个特殊的目录:

      它可以在容器之间共用共享

      对数据卷的更新修改不会影响镜像

      数据卷的修改会立马生效

      生命周期长,直到没有容器使用。

    3-2:创建数据卷:

      在使用docker run的时候,可以使用 -v 标记可以在容器内创建一个数据卷。 多次使用-v 会创建多个数据卷。

      在容器内创建一个数据卷:

    docker pull hub.c.163.com/library/nginx  #使用一个新的 镜像(这个是我以前下的镜像)
    docker tag hub.c.163.com/library/nginx test/nginx #使用对这个镜像打标签生成新的镜像。
    使用新的镜像创建数据卷
    docker run -v /home/lx/docker/dataVolume:/data -ti test/nginx /bin/bash #创建数据卷并进入容器

    在宿主机的dataVolume文件夹,增加test.php

    然后在容器中的data里进行查看,发现容器里面多了一个test.php文件。

    指定文件夹和指定文件到容器,和上面的方法一样。

    3-3:数据卷容器

    如果用户需要容器之间共享一些持续更新的数据,最简单的方法是使用数据卷容器。

    数据卷容器就是一个普通的容器,专门提供数据卷供其他容器挂载。

    使用实例:

    #1.创建一个新的镜像
    docker tag hub.c.163.com/library/nginx  lx/dbdata
    #创建数据卷(如果不想跟宿主机的文件夹进行关联也可以)
    docker run -v /dbdata  --name dbdata  lx/dbdata

    在其他容器里使用这个数据卷容器

    docker run -ti  --volumes-from  dbdata  test/nginx  /bin/bash

    使用数据卷容器,并进入查看/dbdata,在这两个容器里对数据进行修改,是同步改变的。

    3-4:利用数据卷容器迁移数据

    备份数据卷容器中的数据卷:

    压缩导出:

    docker run  --volumes-from dbdata -v   $(pwd):/backup  --name worker   test/nginx

    tar -cvf /backup/backup.tar /dbdata

    tar -cvf  文件名  目录  :压缩命令

    恢复:

    如果想恢复导出的备份数据,需要先创建一个数据卷容器,然后使用volumes-from 挂载这个容器。

  • 相关阅读:
    UI设计教程分享:banner设计
    UI设计教程分享:电商网页页面设计常见表现手法
    UI设计教程学习分享:APP布局
    UI设计技术分享:教你几个设计技巧让老板对你的设计赞不绝口
    ps教程分享:一定要记住这20种PS技术!
    UI设计教程分享:设计一个高质量的logo要从哪方面入手呢?
    UI设计教程分享:字体变形—阴阳收缩法
    实验十一_编写子程序
    课程设计一总结
    课程设计一
  • 原文地址:https://www.cnblogs.com/callmelx/p/11025393.html
Copyright © 2011-2022 走看看