Ubuntu/Debian上可以使用UnionFS,如aufs或者overlay2,而centos和rhel的内核中没有相关的驱动;
这类系统一般使用device mapper驱动利用LVM的一些机制来模拟分层存储;这个做法性能差稳定性也差,配置也复杂,Docker在centos上默认为devicemapper驱动,而且为了简化配置,这个东西是跑在一个稀疏文件模拟的块设备上,也被称为loop-lvm,自动配置唯一能做到的是不需要额外配置就能运行docker,但是loop-lvm稳定性性能极差,无论日志还是docker info都有警告信息;
在官方文档中有如何配置块设备给devicemapper驱动做存储层的做法,即配置direct-lvm,而且devicemapper+loop-lvm是稀疏文件,会不断增长,无法控制,这个稀疏文件的空间释放后基本不进行垃圾回收问题,所以删除镜像也解决不了文件增长问题。
所以!!!!!!!!!!!!!!!!!!!!!!!!!!!
一定要配置direct-lvm给devicemapper,无论是为了性能还是稳定性还是空间利用,