Docker数据卷(Volume)
一、将Docker数据挂载到容器 在Docker中,要想实现数据的持久化(所谓Docker的数据持久化即 数据不随着Container的结束而结束 ),需要将数据从宿主机挂载到容器中。目前Docker提供了三种不同的方式将数据从宿主机挂载到容器中: (1)volumes:Docker管理宿主机文件系统的一部分,默认位于 /var/lib/docker/volumes 目录中;( 最常用的方式 ) 由上图可以知道,目前所有Container的数据都保存在了这个目录下边,由于没有在创建时指定卷,所以Docker帮我们默认创建许多匿名(就上面这一堆很长ID的名字)卷。 (2)bind mounts:意为着可以存储在宿主机系统的任意位置;( 比较常用的方式 ) 但是,bind mount在不同的宿主机系统时不可移植的,比如Windows和Linux的目录结构是不一样的,bind mount所指向的host目录也不能一样。这也是为什么bind mount不能出现在Dockerfile中的原因,因为这样Dockerfile就不可移植了。 (3)tmpfs:挂载存储在宿主机系统的内存中,而不会写入宿主机的文件系统;( 一般都不会用的方式 ) 三种方式的示意图如下所示: 二、Volume的基本使用 2.1 管理卷 # docker volume create