为了学习docker的时候方便理解,先来了解一下虚拟机和docker的结构
容器架构 虚拟机架构

上图来源:https://www.docker.com/resources/what-container
docker省去了Hypervisor层的资源消耗,并且是基于内核的cgroup和namespace技术
Docker引擎
Docker Engine是具有以下主要组件的客户端-服务器应用程序:
-
服务器是一种长期运行的程序,称为守护程序进程(
dockerd命令)。 -
REST API,它指定程序可以用来与守护程序进行通信并指示其操作的接口。
-
命令行界面(CLI)客户端(
docker命令)。 -

-
CLI使用Docker REST API通过脚本或直接CLI命令来控制Docker守护程序或与Docker守护程序进行交互。许多其他Docker应用程序都使用基础API和CLI。
-
守护程序创建和管理Docker 对象,例如图像,容器,网络和卷。
-
namespace的作用是做访问隔离
cgroup的作用是资源控制

本文探讨了Docker容器架构与虚拟机架构的区别,强调Docker利用内核的cgroup和namespace技术,省去了Hypervisor层,从而减少了资源消耗。Docker Engine由守护进程、REST API和CLI组成,允许通过CLI控制Docker对象如镜像、容器、网络和卷。namespace提供访问隔离,而cgroup则用于资源控制。
505

被折叠的 条评论
为什么被折叠?



