+-
docker – LXC和libcontainer之间的区别
在浏览docker docs时,我发现docker现在使用的是libcontainer而不是LXC.有没有人知道libcontainer如何比LXC更好(如果……)?
最佳答案
在Docker 0.9之前使用了> Linux Containers (LXC)(在 March 13, 2014, with the release of version 0.9上,Docker将LXC作为默认执行环境并将其替换为自己的libcontainer库)作为docker的一个执行驱动程序,并为Linux内核包含功能提供了用户空间接口.它非常特定于Linux
> libcontainer(现为 opencontainers/runc)是一个抽象,以支持更广泛的隔离技术,如 described in this article

http://blog.docker.com/wp-content/uploads/2014/03/docker-execdriver-diagram.png

这意味着Docker正在从其原始实现中抽象出来,允许其他供应商(如CoreOS)实现自己的容器版本.

注:从那时起(What’s the difference between runc, containerd, docker?)显示:

In 2016 the container space was booming and docker decided to split the monolith into separate parts, some of which other projects can even build on — that’s how 07006 happened. That was Docker 1.11 (so pretty much ancient history).
Containerd is a daemon that acts as API facade for various container runtimes and OS. When using containerd, you no longer work with syscalls, instead you work with higher-level entities like snapshot and container — the rest is abstracted away.
If you want to understand containerd even more in depth, there’s a 07007 in their GitHub repo.
Under the hood, containerd uses runc to do all the linux work.

查看更多“How containerd compares to runC”

containerd

点击查看更多相关文章

转载注明原文:docker – LXC和libcontainer之间的区别 - 乐贴网