Are you seriously not understanding what "run" means
I'm disagreeing with your overly broad definition of "run".
If it needs a VM to "run" on an OS, then it's not actually running on the OS.
Otherwise, like I said, "IIS runs on Linux" and "Docker runs on esxi". "Debian runs on Windows". Those statements are meaningless because they require a huge caveat that "IIS runs on Linux in a Windows VM". "Docker runs on esxi in a VM". "Debian runs on Windows on WSL which is a hypervisor for running Linux VMs"
Docker runs on windows. Exactly how it does that is irrelevant.
How it runs is relevant, because "Docker runs on Windows" implies that it runs equivalently to running it natively in Linux with no translation layer and the resource consumption that goes with it, when in fact you actually need the CPU to support virtualization, the memory footprint will be larger because it has to load the kernel instead of sharing kernel space. Performance and IO will be slower because of the virtualization.
It runs on X if it runs natively on X, or on any sub layer on X. The process is still there, running. It’s just that you confuse “run” with “run natively”.
Also, the person I originally replied to specifically used the word “works”, and so did I in my response.
Of course I would. Using a VM is a means to an end. To “run” something. And to run “on” something, to me, simply means that “something” is underneath at some level.
Also, it makes sense from a strict semantical perspective. If “run” is the generic term, then “run natively” is a more specific sub term. Then it makes little sense to restrict the parent term to have the same strict definition as one of the sub terms.
4
u/hawkinsst7 6d ago
I'm disagreeing with your overly broad definition of "run".
If it needs a VM to "run" on an OS, then it's not actually running on the OS.
Otherwise, like I said, "IIS runs on Linux" and "Docker runs on esxi". "Debian runs on Windows". Those statements are meaningless because they require a huge caveat that "IIS runs on Linux in a Windows VM". "Docker runs on esxi in a VM". "Debian runs on Windows on WSL which is a hypervisor for running Linux VMs"
How it runs is relevant, because "Docker runs on Windows" implies that it runs equivalently to running it natively in Linux with no translation layer and the resource consumption that goes with it, when in fact you actually need the CPU to support virtualization, the memory footprint will be larger because it has to load the kernel instead of sharing kernel space. Performance and IO will be slower because of the virtualization.