docker概念-容器运行时、容器、容器镜像及结构

1.什么是容器运行时呢?

容器运行时本质上是负责容器生命周期的核心工具,分为低层运行时(runc) 和高层运行时(containerd)。低层运行时直接调用内核创建隔离环境,高层运行时负责镜像管理、网络等完整功能。容器运行时给容器运行提供了必备的资源。

低层运行时是系统必备的,调整namespace,cgroup资源限制。

高层运行时针对容器的业务特征,进一步进行资源优化,高层运行时建立在底层运行时之上。

2.什么是容器镜像,结构是什么样的

它本质上是一个分层的归档包(常见就是 tar),里面装着容器运行需要的静态文件和元数据。镜像里最核心的东西,就是一个能直接当作容器"根目录"的 root 文件系统:应用代码、依赖库、配置文件都在里面,所以镜像一拉下来,容器就能按同样的环境跑起来。

Docker 镜像之所以高效,是因为它采用了分层机制来构建:每一层都是只读模板,通常对应 Dockerfile 里的一条指令(比如 RUNCOPY)。这样做的好处是层与层之间可以共享复用------多个镜像如果底层一样,就能共用同一批层,下载更快、存储更省、构建也更容易缓存。

按照 OCI 标准,镜像主要包含两块内容:

1)文件系统层(Rootfs):也就是容器看到的"根文件系统视图",和宿主机隔离,容器里的进程只看到自己的那套目录结构。

2)配置元数据(JSON):描述容器启动该怎么跑,比如默认启动命令、环境变量、工作目录、用户权限、安全相关配置等。常见关键文件包括:config.json(运行时配置)、manifest.json(描述层级结构与配置路径)、以及每层对应的 layer.tar(存放实际文件内容)。

总结:容器镜像就是一个按层打包的 root 文件系统 + 一份启动说明书(JSON 配置),让应用在任何机器上都能用一致的环境快速运行。

相关推荐
爱装代码的小瓶子2 分钟前
【c++与Linux进阶】线程篇 -互斥锁
linux·c++·算法
武汉禹力自动化科技7 分钟前
ABB火检与火焰检测系统全解析 | 禹力自动化科技有限公司
运维·科技·自动化·abb火检
ren0491811 分钟前
Linux基础
linux·运维·服务器
江畔何人初12 分钟前
Gateway API 的核心组件与作用
运维·网络·云原生·kubernetes·gateway
Wyawsl13 分钟前
Linux系统安全
linux·运维·系统安全
一只鹿鹿鹿23 分钟前
研发中心数据安全管理规定(文件)
java·运维·开发语言·数据库·后端
青灯文案127 分钟前
Linux 常用目录及其用途
linux·运维·服务器
芒果披萨28 分钟前
Linux磁盘挂载
linux·运维·服务器
icy、泡芙31 分钟前
全志 GPIO BUG
linux·bug
SMF191937 分钟前
【Docker】Linux系统上卸载旧Docker、卸载Podman并重新安装Docker及配置国内镜像源
linux·docker·podman