Docker in Docker (dind) and overlay2 doesn't currently work on ZFS, so we need to create an ext4 filesystem volume and have Docker use that. This is helpful to anything that requires overlay2 and/or dind such as minikube (with Docker driver), or K3s.
sudo zfs create -s -V 100G rpool/docker
sudo mkfs.ext4 /dev/rpool/docker
sudo mount /dev/rpool/docker /var/lib/docker
tail -1 /etc/mtab | sudo tee --append /etc/fstab
- k3s-io/k3s#66 (comment)
- moby/moby#41055 (comment)
- Apparently ZFS overlay support was merged, but it's not clear what release it is available in.