Because it was the latest trend 10+ years ago, and now people have made it just work because their applications are all built on it and people need actually good tools to use these architectures. It's always about tools, it's not like TCP is the best protocol or anything, it just has the best tooling, ditto for C, POSIX, etc. anything can be a good standard after 15+ years of work on it. Containers will be like that in a couple of years. It's all just cycles man.