LXC:是来自linuxcontainers.org还是Linux内核的一部分?

问题描述

我想了解有关LXC的信息,并遇到了以下网站:https://linuxcontainers.org/lxc/introduction/;在此站点中,它讨论了LXCLXD等。

我有点困惑,给人的印象是LXC是Linux内核功能,因此它应该出现在内核本身中。但是,查看上面的站点,即https://linuxcontainers.org/lxc/introduction/,当我们说LXC(内核功能)时,是否一样?还是https://linuxcontainers.org/lxc/introduction/将LXC提供给Linux内核?

我如何理解这种细微的区别?

解决方法

在容器中运行Linux所需的大多数核心功能都内置在内核中-名称空间,控制组,虚拟根目录等。但是,从这些功能组装可用的容器平台需要大量的基础结构。我们需要管理容器存储,在容器之间创建网络链接,控制每个容器的资源使用情况等。用户空间程序可以并且一直用于提供此基础结构以及随之而来的工具。

我写了一系列有关从头开始构建容器的文章,解释了其中的一些问题:

http://kevinboone.me/containerfromscratch.html

原则上,仅使用内核中内置的功能以及大量Shell脚本即可构建和连接容器。 LXC,Docker和Podman等工具都使用相同的内核功能(据我所知),但是它们以不同的方式操纵这些功能。