Upstream docker has a decent page: https://docs.docker.com/engine/userguide/storagedriver/selectadriver/
(One thing they don't mention explicitly though is the page cache sharing that overlayfs has over devicemapper or btfs, which can be substantial) Though the patches to use overlayfs with SELinux are still experimental, and not yet in our CentOS stream, I'd like to lay the groundwork for it. In particular, overlayfs has a significant reduction in "administrative cognitive overhead", since we can default to one LV+filesystem for the OS that encompasses both the OS (yum/ostree) data and container images, and hence not have to juggle LV sizes. Another way to look at this is it makes "yum install docker" on CentOS 7 work with a single disk default. This is all related to single node - and there are a lot of potentially better way to manage images in a cluster, but the single node experience is important too. It's relevant both for desktop systems that use Docker and Vagrant boxes, etc. To that end: https://github.com/CentOS/sig-atomic-buildscripts/pull/134 landed, which ensures that newly formatted xfs filesystems are compatible. Our CI then updated the installer and cloud images, so I verified that the vagrant-libvirt box here: https://ci.centos.org/artifacts/sig-atomic/centos-continuous/images/cloud/latest/images/ has: # xfs_info /|grep ftype naming =version 2 bsize=4096 ascii-ci=0 ftype=1 There's a number of TODOs here like making it easier to default to overlayfs from Anaconda/kickstart. But I think the important thing for us to flesh out better is transition paths. Obviously, one can just reinstall a node. Many environments will be set up to do that, but we should also support transitioning a dm to overlay when one doesn't want to reinstall. I've verified that from a current CentOS AH Alpha, I can: systemctl stop docker rm /var/lib/docker/* -rf # (configure docker to use overlay) lvm lvremove atomicos/docker-pool lvm lvcreate -n docker-images -L 10G atomicos # (TODO: also tweak this to auto-grow?) mkfs.xfs -n ftype=1 /dev/mapper/atomicos-docker--images mount /dev/mapper/atomicos-docker--images /var/lib/docker # (add that to /etc/fstab too) systemctl start docker This keeps the atomicos/root LV with an old-format XFS filesystem and won't give you a unified storage pool, but does give you the runtime advantages of overlay.