一、概述

Docker中的数据可以存储在类似于虚拟机磁盘的介质中,在Docker中称为数据卷(Data Volume)。数据卷可以用来存储Docker应用的数据,也可以用来在Docker容器间进行数据共享。数据卷呈现给Docker容器的形式就是一个目录,支持多个容器间共享,修改也不会影响镜像。使用Docker的数据卷,类似在系统中使用 mount 挂载一个文件系统

Docker提供三种不同的方式将数据从宿主机挂载到容器中:volumes,bind mounts和tmpfs。

1、volumes:Docker管理宿主机文件系统的一部分(/var/lib/docker/volumes)。

2、bind mounts:可以存储在宿主机系统的任意位置。

3、tmpfs:挂载存储在宿主机系统的内存中,而不会写入宿主机的文件系统。

当需要查看容器内应用产生的数据或者把容器内数据备份及多个容器数据共享。   有两种方式,数据卷以及数据卷容器。

数据卷:数据卷就是在宿主中可以在容器之间进行共享和重用的一系列和文件和文件夹,通过docker run -v 命令可以将数据卷挂                载到对应的容器目录空间,进行文件读取。

数据卷是一个可供一个或多个容器使用的特殊目录,提供很多有用的特性:

1、数据卷可以在容器之间共享和重用,容器间传递数据将变得高效方便;

2、对数据卷内数据的修改会立马生效,无论是容器内操作还是本地操作;

3、对数据卷的更新,不会影响镜像;

4、卷会一直存在,直到没有容器使用;

数据卷的作用:

1、持久化容器运行过程中产生的数据文件

2、实现多个容器间的文件共享 

二、docker数据卷的管理命令

创建一个数据卷:docker volume create
查看数据卷列表:docker volume ls
删除一个数据卷:docker volume rm
查看一个数据卷的属性:docker volume inspect