Docker中数据存储相关有几部分,存储驱动(storage driver)用于存储镜像和容器,默认路径为/var/lib/docker/
首先,检查系统中存储驱动(storage driver)的类型,CentOS/RHEL中默认使用基于loopback设备的DeviceMapper,除此之外,DeviceMapper还有基于direct-LVM的方式。白话来解释,就是前者基于文件(下图的data和metadata文件)创建,后面基于块设备(使用LVM创建的两个卷)创建。
DeviceMapper的构建层。
基于LOOP device构建DeviceMapper:
1. 基于文件data和metadata分别构建loop设备loop0和loop1:
2. 通过dmsetup基于loop0和loop1设备创建pool。
3. pool上创建的device名为/dev/dm-2