VM has 2GB RAM (80% used) with 3GB SWAP (7MB used) and 25GB with 13GB free (it's Ubuntu + LXDE + Docker + Discourse, that's it!).
I think I may know what's going on, docker + discourse = EXTREMELY heavy on resources (especially RAM and DiskIO)
I had another VM running which I shut down. (actually I've been running up to 3 VM's on this "old" server without issue for years, but each with only 1GB or 512MB RAM and 1CPU - other webservers including IIS are very lightweight)
I realized that the DiskIO generated by Docker + Discourse was excessive which was causing the entire system to slow down. I had a look at the previous errors and after googling a bit (i'm still new to Docker as you can see) I think Docker was timing out on all the operations. It was expecting say 10 seconds to shutdown discourse etc. But due to excessive IO everything was taking like 30 seconds so it would end up killing other processes prematurely (https://github.com/moby/moby/issues/25246) leaving behind artifacts which shouldn't be there if all had been done in a timely fashion which could cause issues when trying to restart it (or after a reboot).
I'm going to give it more resources and see how it does, basically it may be just that Discourse needs a good deal of server resources to run, much much more than a just a regular webserver.
Thanks for staying with me on this one Sam and good learning for other folks too.
Can you share your VMWare VM setup (RAM/CPU/Disk etc) just for comparative purposes?