docker之数据卷

docker的数据管理:
    数据卷:
        一个绕过UFS的特殊目录,可供多个容器使用。
        特性:
            1.可以在容器之间共享和重用
            2.数据卷的修改会立即生效
            3.更新数据卷不影响image
            4.数据卷会一直存在,直到没有容器使用

方式1:创建数据卷
            创建容器的时候使用-v CONTDIR 指定数据卷。

方式2:挂载宿主机的目录作为数据卷
            创建容器的时候使用-v HOSTDIR:CONTDIR

方式3:挂载宿主机的文件作为数据卷
            创建容器的时候使用-v HOSTFILE:CONTDIR
            注意:此方法不推荐,例如vim等工具会造成文件inode的改变,从而会报错。建议直接挂载文件的父目录。

注意:CONTDIR的权限为rw,也可以使用-v HOSTDIR:CONTDIR:ro指定为只读。

HOSTDIR中的文件在容器关闭后仍然存在,所以可以用来存放数据。

数据卷容器:
        本质上也是个容器,专门用来提供数据卷给其他容器挂载。
        方法如下:
            创建容器的时候使用-v CONTDIR 指定数据卷。

其他容器使用数据卷容器:
            创建容器时使用--volumes-from CONTNAME来挂载,指定的container并不需要保持运行状态。

数据卷的备份、恢复、迁移:
        1.备份:
            假设有个容器A启动时创建了名为/test的数据卷。
            新创建一个容器使,使用--volumes-from A ,同时-v 一个宿主机目录/abc到/def
            这样新容器中就有2个目录,/test为数据卷,/def为宿主机/abc的挂载。
            可以使用tar命令 来备份/test的内容到/def下。这样数据卷中的内容就被备份到宿主机/abc中。

2.恢复
            和备份类似,也是通过创建一个新的容器,同时挂载本地文件夹和要回复数据的数据卷容器,然后通过tar等命令来恢复。

时间: 2024-10-05 21:51:43

docker之数据卷的相关文章

(九) Docker 容器数据卷(挂载)

一.容器数据卷 docker 容器数据卷是容器在运行过程中持久化数据的一种方式,卷是目录或文件,存在于一个或多个容器中,由docker 挂载到容器,但不属于联合文件系统,因此能够绕过Union File System  提供一些用于持续存储或共享数据的特性:卷的设计目的就是数据持久化,完全独立于容器的生命周期,因此docker不会在容器删除时,删除其挂载的数据卷. 特点: 数据卷可在容器之间共享或重用数据. 卷中的更改可以直接生效. 数据卷中的更改,不会包含在镜像中的更新. 数据卷的生命周期一直

5、docker容器数据卷

Docker容器数据卷 是什么 一句话:有点类似我们Redis里面的rdb和aof文件 能干嘛 容器的持久化 容器间继承+共享数据 数据卷 容器内添加 直接命令添加 命令 docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名 查看数据卷是否挂载成功 容器和宿主机之间数据共享 容器停止退出后,主机修改后数据是否同步 命令(带权限) docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名 DockerFile添加 根目录下新建mydocker文

docker创建数据卷以及数据卷容器

docker容器管理有2中方式: 1:数据卷:类似Linux下目录挂载mount 2:数据卷容器:其实就是一个正常的容器,专门用来提供数据卷供其它容器挂载的 使用docker search xxx //xxx指的是搜索相应的镜像.搜索后根据自己需求进行pull 下载镜像 [email protected] :~# docker pull jdeathe/centos-ssh 查看pull后的镜像 [email protected] :~# docker images REPOSITORY    

Docker之数据卷和数据卷容器

数据卷是一个可供容器使用的特殊目录,可以在容器之间共享和重用,对数据卷的修改会马上生效,卷会一直存在直到没有容器使用,数据卷的使用类似于mount 数据卷容器就是一个普通的容器,可专门提供数据卷供其他容器挂载使用,可以在容器之间共享一些持续更新的数据 1:创建数据卷 利用镜像centos,创建一个名为tomcat的容器,并在后台以守护进程方式工作,且将本地的/b2b/目录挂在在新建立的tomcat容器的/test目录下 [email protected]:/home/zxl# docker ru

自己学Docker:7.数据卷容器的备份、恢复

最近由于工作的原因,各种事情,忙的要死.用户发现软件有问题,也不管是不是自己操作的问题,一口就咬定是软件的问题,询问什么问题时就"有问题"三个字回应也是醉了. 烦心事过去就不说,之前一直关于Docker看到了数据卷容器,就像知道数据卷容器有什么用处.查了不少资料,最基本的用处还是利用数据卷容器来备份.恢复.迁移数据卷. 备份 我们先创建一个data容器. sudo docker run -i -t -v /data --name data c9fc7f8eec37 根据之前Docker

Docker之数据卷Volume(七)

一.简介 Docker数据卷(volume)机制.volume是存在于一个或多个容器中的特定文件或文件夹,这个目录以独立于联合文件系统的形式在宿主机中存在,并为数据的共享与持久化提供便利. 1)volume在容器创建时就会初始化,在容器运行时就可以使用其中的文件 2)volume能在不同的容器之间共享和重用 3)对volume中数据的操作会马上生效 4)对volume中数据的操作不会影响到镜像本身 5)volume的生存周期独立于容器的生存周期,即使删除容器,volume仍然会存在,没有任何容器

docker 数据管理数据卷

1,数据卷 数据卷是一个可供容器使用特殊目录,他将主机操作系统目录直接映射容器 1,在容器内创建一个数据卷 在使用docker run命令的时候,使用-v标记就可以创建一个数据卷,多次重复使用-v可以创建多个数据卷,例如使用training/webapp 镜像创建一个web容器,并创建一个数据卷挂载到容器的/webapp目录 2,挂载一个主机目录作为数据卷 3数据卷容器共享数据 原文地址:https://www.cnblogs.com/1204guo/p/9256238.html

docker中数据卷探究与总结

为实现持久化,docker引入了挂载数据卷的方法,以实现数据的可持久化.具体是以下三种:一.通过docker run命令命令:docker run -dit --name gerrit -p 9001:8080 -p 29419:29418 -v /home/docker/test.txt:/var/spool/cron/crontabs/root openfrontier/gerrit:2.15.3此时将宿主机的/data/mysql1挂载到容器的/var/lib/mysql下,这里需要注意的

docker 12 docker容器数据卷

数据卷概念 ♣我们知道,当我们把一个运行中的容器关闭后,容器里的数据就没有了(如果你做了docker commit操作,数据会保留到新的镜像里面).所以我们就需要用容器数据卷把容器数据进行持久化储存. ♣还有一种情况,就是希望容器之间能共享数据,这时也需要容器数据卷. ♣一句话,数据卷就是用来解决数据持久化和数据共享的. ♣卷就是目录或者文件,存在一个或者多个容器中,由docker宿主机挂载到容器上,但是不属于联合文件系统,因此能绕过联合文件系统提供一些用于持久化存储或者共享数据的特性. ♣卷的