Docker和OpenVZ之间的区别

我是虚拟化世界的新手。 有人能向我解释OpenVZ和Docker之间的区别吗?

对未来有什么好处?

优点和缺点?

2,集装箱的angular度是非常不同的。

简而言之, OpenVZ将容器视为VPS,而Docker将容器视为应用程序/服务。

这意味着什么? 对于OpenVZ,您可以期望在创build容器时,就像制作虚拟服务器一样。 OpenVZ的界面专注于设置您手动修饰自己的VPS容器。 因此,他们为空的linux机器提供了模板,你可以启动和closures,然后SSH进入,用你需要的任何东西来设置它们,比如LAMP堆栈。

当你想build立一个LAMP堆栈时,你会像在平时一样build立一个新的服务器。 你得到一个虚拟的linux虚拟机,虚拟的以太网适配器有自己的公共可访问的广域网IP和Ubuntu,使用SSH访问它,并使用普通的软件包pipe理器(yum或apt)安装所有必需的服务,你自己需要在configuration文件中设置。

对于Docker,你可以期望当你创build容器时,容器是一个单一的应用程序,只是做一件事情。 因此,它可能需要一些其他的容器来帮助它。 (例如提供数据库的容器)Docker使得定义容器内部的内容变得非常容易,而不必实际启动一个容器,并不断地创build这个容器的新的完全相等的实例。 他们通过使用非常轻量级的模板来定义Docker容器(图片)的内容,他们调用Dockerfiles。

现在已经有一大堆docker文件,你可以在docker集线器中find,看看你自己(就像是在糖果店里,有免费糖果!:D): docker集线器 。 这些dockerfiles产生的图像可以通过使用pull命令的docker CLI工具来提取。 在docker工作人员也可以轻松访问诸如端口转发,虚拟目录(以便您可以轻松访问主机上的文件)以及类似于任何可执行文件可以使用的内容。

如果你想在Docker中使用LAMP堆栈,只需要“docker run -d -p 80:80 tutum / lamp”

这将拉图像tutum / lamp,并运行守护进程(-d),将端口80从容器转发到主机的端口80,将内部web服务暴露给外部。 如您所见,与OpenVZ机器相比,它没有自己的IP地址。 它就像它在根机器上运行的apache服务器一样。 与本地安装相比,Docker的优势在于使安装变得更加简单和无限可复制。 它也不会让你的主机有很多文件,并且在你的应用程序周围提供一个安全边界。

在大多数docker图像中有大量的特征,这些特征是独一无二的。 对于tutum / lamp图像, 请看这里。