docker如何在osx上运行,它使用stream浪汉吗?

我使用一个较老的MB Air,运行的stream浪者对我来说是非常耗费资源的。

在OSX上使用docker的时候,是不是只能在幕后使用vagrant来在Ubuntu上运行docker实例呢?

与不推荐使用的Docker Toolbox (也可在MacOS上运行)相比, Docker for Mac的最新版本不使用VirtualBox ,而是使用基于xhyve构build的本机MacOS虚拟机HyperKit 。 与VirtualBox相比,HyperKit声称更轻量级。

还要考虑有关Docker Toolbox和Docker for Mac(重点介绍)的差异和内部的官方文档 :

Docker for Mac是Mac原生应用程序,您可以在/Applications安装。 […]

在开始之前,了解关于Docker for Mac的一些要点:

  • Docker for Mac不使用VirtualBox,而是使用HyperKit,这是一个轻量级的macOS虚拟化解决scheme,构build于macOS 10.10优胜美地及更高版本的Hypervisor.framework之上。 […]
  • Docker for Mac应用程序不使用docker-machine来configuration虚拟机; 而是直接创build和pipe理它。
  • 在安装时,Docker for Mac提供了一个基于Alpine Linux的HyperKit虚拟机,运行Docker Engine。 它在/var/run/docker.sock的套接字中公开docker API。 由于这是docker在没有设置环境variables的情况下的默认位置,因此您可以在不设置任何环境variables的情况下开始使用docker和docker-compose。

[…]

使用Docker for Mac,您只能获得一个虚拟机,而您不需要pipe理它。 它由Docker for Mac应用程序pipe理,其中包括自动更新来更新Docker的客户端和服务器版本。

它不使用Vagrant,但它有一个与Vagrant使用相似的底层VirtualBox机器。 Docker的情况可能会稍微好一些,因为docker虚拟机的版本很小。 而且您可以以更有效的方式将多个映像打包到该VM中,因为它们将使用相同的内核和IO层。

另外,请注意,既使用Vagrant和Docker,您也可以使用AWS或类似的云来实际运行您的图像。