Mac OS X可以在Docker中运行吗?如果是这样,关于它的建议如何?

它会无头运行,还是有可能远程连接到GUI?

评论

可能是serverfault.com/questions/573378/…的副本。

#1 楼

Docker提供了用于管理OS级容器的方法,并且基于Linux的OS级容器化本机功能构建。系统上运行的所有容器都共享相同的内核。 Mac OS X不使用Linux内核,而是使用mach内核,因此目前不能在Docker容器中运行。

您可以使用虚拟机在Mac上运行Docker,但是在该实例上运行的容器需要运行Linux。

现在Docker使用libcontainer而不是LXC作为基础,将来有可能将来移植libcontainer可能允许运行Windows和Mac分别在这些系统上使用OS Docker容器,但是这取决于可用于容器化的适当OS功能。

评论


因此[Mac]目前无法在Docker容器中运行。 <-现在对此有任何更新吗?还是我们仍然仅限于纯Linux应用程序?

–河马
16年8月9日在4:24



如今(2017年1月),Docker在Windows平台上运行,并且能够运行Windows或基于Linux内核的映像,但不能同时运行两者

– MaxXx1313
17年2月2日在15:57

问题是关于在虚拟环境中运行MacOS。问题不是MacOS是否可以运行Docker。

–肯·英格拉姆
18/12/29在17:09

在macOS上不需要VM即可运行Docker。

–珍妮
20年5月1日下午5:06

#2 楼

可以在Docker容器中运行OSX VM。以https://github.com/Cleafy/sxkdvm为例。

评论


在容器内运行VM似乎有点缺乏容器的要点...

– Shayne
19年1月9日在6:35

同意这是一个令人印象深刻的成就,但这样做的好处几乎为零。

–威尔弗雷德·史密斯
19年5月7日在18:51

那么,如果您想为osx构建电子应用程序呢?

–克里姆森
19年7月17日在0:09

如果您想使用许多适用于docker的工具来编排OSX计算机,这是有道理的。例如出于CI目的。

–thoutbeckers
19年8月1日在12:07

#3 楼

如果要直接在Docker内部运行macOS,答案是否定的,请参阅@phoebus的答案。

如果确实需要它,请参阅@Andrea Brancaleon的建议,该建议建议在Docker内部的VM中安装macOS。

但是,如果您想知道根据macOS许可是否可以采用上述解决方案,那么答案还是不是*。

引用macOS Catalina的软件许可协议,第2节,B点:

[...] you are granted a limited, non-transferable, non-exclusive license: [...]
(iii) to install, use and run up to two (2) additional copies or instances of the Apple Software
within virtual operating system environments on each Mac Computer you own or control that is
already running the Apple Software, for purposes of: (a) software development; (b) testing during
software development; (c) using macOS Server; or (d) personal, non-commercial use.


对于旧的macOS版本是相同的。


*,除非您要运行Mac主机上MacOS主机系统上Linux虚拟机内Linux Docker容器内虚拟机内的macOS