在生产环境中使用 Docker,往往需要对数据进行持久化,或者需要在多个容器之间进行数据共享,这必然涉及容器的数据管理操作。容器中的管理数据主要有两种方式 :
- 数据卷 ( Data Volumes ) : 容器内数据直接映射到本地主机环境;
- 数据卷容器( Data Volume Containers ) : 使用特定容器维护数据卷。
数据卷
数据卷 ( Data Volumes ) 是一个可供容器使用的特殊目录,它将主机操作系统目录直接映射进容器,类似于 Linux 中的 mount行为 。
数据卷可以提供很多有用的特性 :
- 数据卷可以在容器之间共享和重用,容器间传递数据将变得高效与方便;
- 对数据卷内数据的修改会立马生效,无论是容器内操作还是本地操作;
- 对数据卷的更新不会影响镜像,解耦开应用和数据 ;
- 卷会一直存在 ,直到没有容器使用,可以安全地卸载它 。
创建数据卷
Docker 提供了 volume 子命令来管理数据卷,如下命令可以快速在本地创建一个数据卷:
docker volume create -d local test
此时 ,查看/var/lib/docker/volumes 路径下,会发现所创建的数据卷位置 :