With 6.9 we now have the ability to use multiple cache pools. I transferred my data to a raid1 cache array. However, I still have to leave one hard drive in the main array in order to start the array which is needed to run dockers.
This can be mitigated by allowing the array to start regardless of what drives you configured. This will also help those with unofficial zfs mounts.
or
Change docker & virtual machines to run at startup regardless of array running. This may cause other issues especially if your appdata, vm disks, etc are on the array, so i think the first recommendation would be best.