如果docker使用虚拟机在mac上运行,那么它比vagrant有什么优势?

如果docker使用虚拟机在mac上运行,那么它比vagrant有什么优势?,docker,vagrant,boot2docker,docker-machine,Docker,Vagrant,Boot2docker,Docker Machine,所以我在很多地方读到docker更快、更高效,因为它在虚拟机上使用容器,但当我在mac上下载docker时,我意识到它使用虚拟盒来运行容器。我相信在linux机器上docker不需要虚拟机,可以在linux内核上运行。这是正确的吗 回到原来的问题。docker是否仍然更快/更高效,因为它使用一个VM来运行多个容器,而不是Vargrant针对每个环境的新VM 我相信在linux机器上docker不需要虚拟机,可以在linux内核上运行。这是正确的吗 是的,因此需要VirtualBox Linux虚

所以我在很多地方读到docker更快、更高效,因为它在虚拟机上使用容器,但当我在mac上下载docker时,我意识到它使用虚拟盒来运行容器。我相信在linux机器上docker不需要虚拟机,可以在linux内核上运行。这是正确的吗

回到原来的问题。docker是否仍然更快/更高效,因为它使用一个VM来运行多个容器,而不是Vargrant针对每个环境的新VM

我相信在linux机器上docker不需要虚拟机,可以在linux内核上运行。这是正确的吗

是的,因此需要VirtualBox Linux虚拟机(使用发行版)

docker是否仍然更快/更高效,因为它使用一个VM来运行多个容器,而不是Vargrant针对每个环境的新VM

是的,因为没有模拟硬件和操作系统:在这里,您可以直接使用内核(通过)启动多个容器,而无需模拟操作系统。
(注意:2018年5月,是另一个选项:容器,模拟操作系统!)

请参阅“”中的更多内容

当然,记住这一点。
这意味着您不必总是为成熟的VM提供Vagrant,而是图像和容器

Vagrant.configure("2") do |config|
  config.vm.provider "docker" do |d|
    d.image = "foo/bar"
  end
end

请参阅。

非常感谢您提供如此详细的答案。