Single VM vs. process groups vs. separate apps: current best practice for multiple processes?

And you still need everything for every process in the same docker image. It just sets them up in different VMs, which allows you to scale them horizontally and vertically separate.

OK, I hadn’t considered that. That’s not so appealing.

Option 2, and 3 require separate mounts if needed, because each machine can only have 1 volume, and each volume can only belong to one machine.

That’s fine in my case: only the web app server needs a mount.

Option 3 seems like the way to go, but I don’t have a good understanding of how private networking interacts with machines scaling to zero. In my case, C) needs to run on a machine with more memory and CPU so it can get its occasional task done as quickly as possible. But most of the time it should be suspended. It seems like it loses its .internal DNS address when it gets suspended, and I can’t wake it back up without restarting it…