LXD 和 LXC

LXD 和 LXC

Docker、LXD 和 LXC 之间有什么区别?他们提供相同的服务还是不同的服务。

答案1

不,LXC、Docker 和 LXD 并不完全相同。简而言之:

LXC

LinuX Containers (LXC) 是一种操作系统级虚拟化方法,用于在单个控制主机(LXC 主机)上运行多个隔离的 Linux 系统(容器)

https://wiki.archlinux.org/index.php/Linux_Containers

低水平...

https://linuxcontainers.org/

码头工人

  • 通过 Docker 公司
  • 使用 LXC 容器的容器系统
  • 所以你可以:Build, Ship, and Run Any App, Anywhere http://www.docker.com

LXD

Docker 与 LXD

  • Docker 专门用于部署应用程序
  • LXD 专注于部署 (Linux) 虚拟机

Docker 与 LXD 的信息图

来源:http://linux.softpedia.com/blog/infographic-lxd-machine-containers-from-ubuntu-linux-492602.shtml

起初:https://insights.ubuntu.com/2015/09/23/infographic-lxd-machine-containers-from-ubuntu/

小技术说明

答案2

这张图可以帮助您理解它们之间的主要区别:

LXC X 码头工人

它们的共同点是,这三种技术都与容器相关。

容器是一种轻量级虚拟化机制,不需要您在模拟物理硬件上设置虚拟机。在 Linux 中,它们的共同点是使用的内核功能:cgroupsnamespaces(ipc, network, user, pid, mount)。他们还尝试通过创建非特权容器并与selinux.这些技术导出 API 以更好地与其他软件集成。

LXD 和 LXC

这两个集成了同一个家庭在哪里:

  • 长沙:Linux 内核遏制功能的用户空间接口。这个人负责管理内核命名空间、Apparmor 和 SELinux 配置文件、Chroots、内核功能以及所有其他与内核相关的东西
  • 长xd: 是一个容器“管理程序”。它由守护进程 (lxd)、命令行界面 (lxc) 和 OpenStack 插件组成。这个家伙的开发是为了给 lxc 提供更多的灵活性和功能,同时它仍然在幕后使用它。

基本上,独立的操作系统用户空间是使用其隔离的基础设施创建的。与 Docker 相比,lxc 更直接地基于操作系统的网络和存储功能。

您创建了许多具有用户空间和内核隔离的虚拟机,但它们不是完整的虚拟机,因为它们没有运行独立的内核,也没有出于同样的原因进行半虚拟化。

Canonical 是这里的主要赞助商,Oracle 也在这项技术上投入了工时。

码头工人

它有一些区别,其中最大的区别是引擎使用独立的文件系统而不是基本的“用户空间映像”来包装应用程序。这个想法是包含应用程序和基础映像,以营造应用程序是引擎内的单个进程的印象。 Docker使用lxc技术作为底层与内核通信,但今天,它使用自己的库,库容器

文件系统是 Docker 的抽象,而 lxc 直接使用文件系统功能。网络也是一个抽象,而使用 lxc 您可以更轻松地设置 IP 地址和路由配置。一些“类似应用程序商店”的网站由微软、亚马逊、Vmware、IBM 和其他公司维护。

码头工人。 INC.是这里的主要赞助商。虚拟机是还投资在这项技术中。

相关容器技术:

这些是 Linux 拥有的其他容器技术:开放VZLinux虚拟服务器

相关内容:

相关内容