docker如何在osx上运行,它是否使用了vagrant?

时间:2017-01-30 16:06:58

标签: macos docker

我使用旧型号MB Air并且运行流浪者对我来说是非常耗费资源的。

在OSX上使用docker时,是否只是在幕后使用vagrant在ubuntu上运行我的docker实例?

2 个答案:

答案 0 :(得分:5)

与已弃用的Docker Toolbox(也在MacOS上运行)相比,最新版本的Docker for Mac 不使用VirtualBox ,而是使用HyperKit,本机MacOS虚拟机管理程序,构建于xhyve之上。与VirtualBox相比,HyperKit声称更轻巧。

还要考虑关于Docker Toolbox和Docker for Mac(强调我的)差异和内部的official documentation

  

Docker for Mac是Mac本机应用程序,您可以在/Applications中安装。 [...]

     

以下是在开始之前了解Docker for Mac的一些要点:

     
      
  • Docker for Mac不使用VirtualBox,而是使用HyperKit,一种轻量级macOS虚拟化解决方案,构建于macOS 10.10 Yosemite及更高版本的Hypervisor.framework之上。 [...]
  •   
  • Docker for Mac应用程序不使用docker-machine来配置该VM;而是直接创建和管理它。
  •   
  • 在安装时,Docker for Mac提供基于Alpine Linux的HyperKit VM,运行Docker Engine。它在/var/run/docker.sock中的套接字上公开docker API。因为如果没有设置环境变量,这是docker将看到的默认位置,您可以开始使用docker和docker-compose而不设置任何环境变量。
  •   
     

[...]

     

使用Docker for Mac,您只能获得一个VM,而您无法管理它。它由Docker for Mac应用程序管理,其中包括autoupdate以更新Docker的客户端和服务器版本。

答案 1 :(得分:0)

它没有使用Vagrant,但它有一个类似于Vagrant使用的底层VirtualBox机器。使用Docker可能会稍微好一些,因为docker VM的版本非常简洁。您可以以更有效的方式将多个映像打包到该VM中,因为它们将使用相同的内核和IO层。

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