container只管应用程序,它只管应用程序。所以比虚拟机少了一个os层。
app
bin/lib
OS
hypervisor
OS
app
bin/lib
container
OS
还有如果有特殊需求,修改了内核和驱动,这算是是全局修改。
dockerc/s架构,restful api进程间通信。
image read only layers,层层叠加的文件系统,unionfs实现。
container container layer,image运行实体,加了一层可读写容器层。
Repository Registry store a lot of images
底层实现依赖于linux功能支持。
namespace做隔离,让app看起来就他自己。
cgroup做软硬件资源管控,你只有这么多 /sys/fs/cgroup/
单容器,单应用原则。
多容器间可搭建网络通信。