docker架构及工作流程
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,一、概念docker是开源容器引擎,基于cgroup,namespace,unionFS等技术实现,对应用进行封装的虚拟化技术什么是cgroup?对系统资源限制,创建容器的过程其实就是在创建进程,对资
千家信息网最后更新 2026年10月31日docker架构及工作流程
一、概念
docker是开源容器引擎,基于cgroup,namespace,unionFS等技术实现,对应用进行封装的虚拟化技术
什么是cgroup?对系统资源限制,创建容器的过程其实就是在创建进程,对资源的分配和维护使用cgroup来管理,包括cpu,内存,io等?什么是namespace?创建容器时,对容器来说就是一个全新的系统,容器内的文件系统要和宿主机文件系统隔离,网络空间隔离,用户权限隔离,这些隔离操作都是有namespace 来管理完成的什么是unionFS?联合文件系统,简单理解就是多个目录结构合并成一个,而各个目录结构本身物理位置并没有变化。二、架构
1.C/S架构
组件:docker cli: docker客户端,用来管理docker,向docker发送指令的工具docker engine: 拉取推送镜像,对容器操作相关的api的最上层封装,直接面向clientimage repository: 注册中信,存储镜像的地方Containerd: 是一个守护进程,负责管理shim,向docker engine提供接口,使用UnixSocket通信,协议是grpcshim: 负责管理单个容器,启动一个容器,就会启动一个shim进程, containerd管理所有容器runC: 运行一个容器。是基于OCI标准的一个容器技术实现,是一个可以直接创建和运行容器的工具。runc直接与容器所依赖的cgroups/kernel等进行交互,负责容器所需环境2.工作流程
docker client发出创建容器指令,docker engine接到指令后去镜像仓库拿到镜像后,通过grpc调用通知docker-containerd启动容器,docker-containerd收到通知后启动shim进程,shim进程启动后,运行runC子进程,runcC会和cgroup,kernel交互,启动容器,然后runC销毁,shim接管容器并监控容器, 整个容器创建过程完成三、镜像和容器的关系
镜像可以理解为一系列封装好的目录,容器理解为将这些封装好的目录合并挂载,镜像是静态资源,容器是可读写的,四、容器应用场景
1.环境一致性2.CI/CD3.微服务4.弹性伸缩5.灰度发布五、容器与虚拟机的额区别
- VM 技术层⾯面是基于硬件的 hypervisor 层实现的, 而 container 是基于操作系统上软件 docker engine 实现的
- VM 要进行应⽤用隔离, 必须先创建⼀一个新的
臃肿的 os, 与其说是对应用隔离, 不如说是系统隔离 - VM 资源消耗⼤大, 启动慢, 系统隔离, 且由于基于硬件, 所以需要硬件支持虚拟化; Container 资 源消耗小, 启动快, 进程隔离, 不用考虑CPU是否支持虚拟化
容器
隔离
系统
进程
镜像
管理
技术
目录
资源
封装
就是
指令
文件
硬件
应用
运行
架构
工具
环境
结构
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
瑰夏咖啡
中智农互联网科技
今日互联网科技
科技服务与互联网
互联网科技美容
科技大学互联网专业好不好
互联网汽车科技小镇
须眉科技是互联网公司吗
欧洲十大科技互联网公司
互联网科技扶贫时间
想开互联网科技公司怎么样
乌苏新华互联网科技做什么的
天津腾达互联网科技有限公司
爱医互联网络科技
怎样加入科技互联网
启辰互联网科技
工业互联网科技成果转化
科技互联网专业工作会议发言稿
保山浩联互联网科技有限公司
10位科技互联网大佬
智能科技公司是互联网公司吗
互联网科技未来
广州凡科互联网科技
碳银互联网科技有限公司
天下捷融互联网科技
全球顶尖互联网科技公司
互联网媒体平台算高科技产业
黑科技 体验场景 互联网大会
互联网科技对化妆品行业
互联网对科技影响