一尘不染

我应该使用Vagrant还是Docker创建隔离的环境?

docker

我使用Ubuntu进行开发和部署,并且需要创建一个隔离的环境。

我正在考虑为此目的使用Vagrant或Docker。优缺点是什么,或者这些解决方案相比如何?


阅读 283

收藏
2020-06-17

共1个答案

一尘不染

如果您的目的是隔离,那么我认为Docker是您想要的。

Vagrant是虚拟机经理。它允许您编写虚拟机配置和配置脚本。但是,它仍然是虚拟机,取决于VirtualBox(或其他),具有巨大的开销。它要求您拥有一个巨大的硬盘文件,需要很多内存,并且性能可能不是很好。

另一方面,Docker通过LXC使用内核cgroup和命名空间。这意味着您使用与主机相同的内核和相同的文件系统。您可以将Dockerfile与docker build命令配合使用,以处理容器的配置和配置。您在docs.docker.com上有一个有关如何制作Dockerfile的示例;这是非常直观的。

您可能要使用Vagrant的唯一原因是,如果需要在Ubuntu机器上进行BSD,Windows或其他非Linux开发。否则,选择Docker。

2020-06-17