【发布时间】:2019-01-24 08:32:29
【问题描述】:
我想了解什么是容器以及它们的用途是什么?
我有点困惑。当我开始阅读它们时,我发现它们依赖于 Linux 命名空间(是真的吗?)——一种将容器内的进程与机器上的其他进程隔离开来的方法,并给人的印象是它们的主要目的是安全.
例如,假设我拥有一台运行多个服务的服务器。我也不希望一个被黑的服务就能黑掉整个系统。所以我把每一个服务都放在一个容器里,让这个服务不能干扰机器内部的其他进程,比如杀死它们或玩弄它们的内存,这样就消除了风险。
但后来我看到了其他用途,比如能够轻松发布应用程序?或类似的东西。那么他们的主要目的是什么?我还读到,如果他们的主要目的是安全——他们就有问题。因为它们直接在主机内核上运行(再次,这是真的吗?) - 像“脏牛”这样的漏洞将或能够离开容器并能够破坏机器。所以我结束了关于 gVisor 的阅读——据我了解,它试图保护容器,并且在某些情况下成功。那么 - gVisor 有什么不同呢?它能够保护容器吗? gVisor 本身是一个容器吗?还是只是容器的运行时环境?
最后,我总是看到容器和虚拟机之间的比较,我问为什么?我应该什么时候使用它们?
我不知道我写的任何内容是否正确,如果您能指出我的错误并回答我的问题,我将很高兴。是的,我知道有很多,我很抱歉,但谢谢!
【问题讨论】:
标签: security virtual-machine virtualization linux-containers