Just now getting to look at your diagnostics, and I know you have made some changes to your shares use cache setting, but I doubt you have them set up correctly now. This is unlikely to be the reason for the crashes but I thought I would comment anyway.
appdata, domains, and system shares should be cache-prefer until you get them all moved to cache, then you should set them to cache-only. But mover can't move open files, so Docker and VM services would have to be disabled before attempting to move them. And in your diagnostics each of those shares had files on the array.
You had another share, probably Downloads, that was prefer and that was probably how you filled cache. People are often confused about the cache settings. Prefer means prefer to keep files on cache and if any are on the array move them to cache. That share should be cache-yes. All the other shares should be cache-yes also, at least until you get all their files moved to the array, then you can set them to cache-no if you want.
That is just a basic guideline. Once you better understand how you intend to use cache you can set them as you see fit.
See here for more details about the nuances of the use cache setting:
https://forums.unraid.net/topic/46802-faq-for-unraid-v6/?do=findComment&comment=537383
You can see how much of each disk each user share is using by going to Shares - User Shares and click on Compute... for the share, or just use the Compute All button at the bottom. If it hasn't produced any results after several minutes refresh the screen.
Why are you using docker-compose instead of the Unraid webUI to manage your dockers? I know there are some things that can't be easily done without docker-compose, but if you manage your dockers at the command line there are some features of the Unraid webUI for managing dockers that won't apply.