mac、win 下有类似 cgroup、namespace 这些api吗
比如我要仿照 docker 做一个『应用容器引擎』,想做到三平台通吃的话,需要在 win、mac 下调用为什么 api 呢?
因为好像 cgroup、namespace 是 linux 特有的。mac、win 的 cgroup、namespace 平替是什么呢?
mac、win 下有类似 cgroup、namespace 这些api吗
比如我要仿照 docker 做一个『应用容器引擎』,想做到三平台通吃的话,需要在 win、mac 下调用为什么 api 呢?
因为好像 cgroup、namespace 是 linux 特有的。mac、win 的 cgroup、namespace 平替是什么呢?
不知道你用过Docker Desktop 的windows版本没,他其实就是依赖windows的Hyper-V, 在它的支持下,将Docker容器运行在Linux的虚拟机里。也就是没有环境,就模拟环境,java怎么实现的跨平台运行,不还是靠的JVM虚拟机
2 回答2.5k 阅读✓ 已解决
1 回答2.9k 阅读✓ 已解决
2 回答1.7k 阅读✓ 已解决
2 回答1.7k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
1 回答1.8k 阅读✓ 已解决
2 回答1.4k 阅读
是的,类似cgroup和namespace这些Linux中的容器技术,在Mac和Windows平台也有相应的API和工具,尽管它们可能有所不同。
在MacOS平台,可以使用Docker for Mac,它基于HyperKit虚拟化技术,在MacOS上运行Linux容器。此外,MacOS还提供了命名空间和控制组的实现,可以通过命令行工具launchctl来访问它们。例如,可以使用命令行工具launchctl来创建和管理进程控制组,以及使用名字空间来隔离进程和网络。
在Windows平台上,可以使用Docker Desktop for Windows来运行容器。Docker Desktop for Windows包括一个Windows容器和一个Hyper-V Linux虚拟机。此外,Windows还提供了称为"Windows Server Containers"的原生Windows容器,以及名为"Hyper-V Containers"的超级虚拟化容器。Windows还提供了一些API和工具,如PowerShell、WMI、WinRM等,可以用来创建和管理Windows容器、Hyper-V虚拟机等。
总之,Mac和Windows平台也提供了类似cgroup、namespace这些容器技术的API和工具,使得用户可以在这些平台上构建和运行容器化的应用程序。