Why does Compose still only work on one server? I am perpetually perplexed that nobody has patched Compose to manage k8s resources, have its own multi-node support, or push Swarm more. How has nobody fixed this? The tool is 9 years old.

Well there are two things:

Compose, "the binary" [1]. It used to be "just" a Python helper script that called Docker, used to deploy multiple containers in a common network easily. It was rewrited in Go, and now it's kind of a plugin for Docker. I think it's strongly tied to Docker primitives, and wouldn't be that easy to modify it to work on different container orchestrators.

But there's also Compose "the file format" [2]. There are tools, like Kompose[3], that understand the Compose format, and can use it to deploy in Kubernetes.

  1: https://github.com/docker/compose
  2: https://compose-spec.io/
  3: https://kompose.io/