【问题标题】:Docker image running a Mac OS X installation运行 Mac OS X 安装的 Docker 映像
【发布时间】:2017-04-11 00:13:18
【问题描述】:

我正在使用 Docker for Mac,并希望使用我的开发环境创建运行 Mac El Capitan 的 Docker 映像。

我在这方面没有找到任何资源。我看到的只是 Linux 安装。

在 Linux 上,我看到的事情很简单:

FROM sciensa2/docker-java8
RUN apt-get update
RUN apt-get install -y wget unzip libgtk2.0-0:amd64 libxtst6

但是 OS X 安装和运行其他软件的 FROM 值是多少?

【问题讨论】:

  • Docker for Mac 与 Linux Docker 共享相同的镜像,因为 Docker for Mac 实际上在您的机器上运行 Linux VM。那你有什么顾虑?
  • 我不关心主机操作系统。我需要最终图像虚拟化 mac osx 而不是 linux
  • 那么您是否尝试在 Docker 容器中运行 MacOS 环境?

标签: macos docker osx-elcapitan


【解决方案1】:

如果您尝试在 Docker 容器中将 Mac OS 作为基础系统运行,那么很遗憾,没有办法做到这一点。

Docker容器需要使用宿主机的Linux Kernel,由于Mac OS家族是基于Unix的操作系统,目前Docker无法在Docker容器中模拟Mac OS。这里是a link to explain how container works

【讨论】:

  • 按基本系统,我想你的意思是“主机”
  • 我认为这个答案不是很准确或完整。在 MacOS 主机上,我可以构建 Ubuntu 映像并运行 Ubuntu docker 容器。那么为什么不反过来呢?
  • @AlexanderMills 在 MacOS 主机上,ubuntu 并没有真正在这个 MacOS 环境中运行,而是在 Linux VM 中的 docker 引擎上运行。您实际上是在 Linux VM 上构建 Ubuntu 映像。
  • @LennartRolland 是的,微软已经启用了 Windows 容器,尽管它们必须在使用相同版本的操作系统 docker.com/products/windows-containers 的 Windows 主机上运行。这是一个很好的开始,希望 Apple 有一天也会这样做。
  • @abd3721 现在还可以从 macOS 主机 (ref) 运行 Windows docker 映像。
【解决方案2】:

这会很好,尤其是对于 CI 服务器:

  1. 您可以运行OSX on QEMU(类似于 VirtualBox,模拟 核心)。
  2. 您可以运行QEMU from a Docker 容器。我有 为 ARM 开发人员完成了此操作,并且效果很好。
  3. 是的,你可以运行 OSX 来自 Docker,但您必须模拟,使用虚拟 机器在容器中。

【讨论】:

    【解决方案3】:

    如果您的主机上可以使用硬件虚拟化 (KVM),您现在可以使用 Docker-OSX 通过OSX-KVM 在 QEMU/KVM 上运行/模拟 macOS。

    【讨论】:

      猜你喜欢
      • 2017-10-15
      • 2015-08-24
      • 2011-01-03
      • 2013-10-29
      • 2015-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-13
      相关资源
      最近更新 更多