Completely agree, and anyone with any foresight would insist on something more robust. But very often the courts have to deal with situations where the parties did not have that foresight and instead proceeded to do business with one another on the basis of informal or very flimsily documented arrangements. And it falls to the court to look at what little evidence there is and determine (to the extent they can) whether there was an agreement and, if so, what the agreement entailed.
You would actually be surprised just how much business is conducted like this.
Services vary a lot on how they are deployed and their dependencies, etc. The knowledge I have (and honestly I don’t have much) I just built over time, tinkering with different set-ups and trying to debug problems when they arose. So I guess just choose a few difference services and try to get them working (choose low-stakes ones at first, where the risk of getting pwned or losing everything is very low). Docker can abstract away a lot, so maybe try more direct deployments if you are interested in learning.