Fix heading hierarchy

This commit is contained in:
baohua
2026-03-05 19:24:01 -08:00
parent f5cfa4140a
commit 70ef2cba58
14 changed files with 231 additions and 61 deletions

View File

@@ -1,3 +1,50 @@
## 12.5 容器格式
最初Docker 采用了 `LXC` 中的容器格式 0.7 版本以后开始去除 LXC转而使用自行开发的 [libcontainer](https://github.com/docker/libcontainer),从 1.11 开始,则进一步演进为使用 [runC](https://github.com/opencontainers/runc) 和 [containerd](https://github.com/containerd/containerd)。
### Docker 容器格式的演进
最初Docker 采用了 `LXC` 中的容器格式 0.7 版本以后开始去除 LXC 的依赖转而使用自行开发的 [libcontainer](https://github.com/docker/libcontainer)。从 1.11 开始,则进一步演进为使用 [runC](https://github.com/opencontainers/runc) 和 [containerd](https://github.com/containerd/containerd)。
### 关键组件说明
#### LXCLinux 容器
Docker 早期版本0.1-0.7直接使用 LXC 作为容器运行时利用 Linux Namespaces Cgroups 实现容器隔离
#### libcontainer
- Docker 自行开发的容器库
- 提供了容器的通用接口
- 不依赖于特定的 Linux 容器实现
- 更灵活和可控
#### runC
- OCIOpen Container Initiative标准实现
- 轻量级的容器运行时
- 独立的二进制文件可单独使用
- 基于 libcontainer 发展而来
#### containerd
- Docker 开源的容器运行时
- 提供了容器的完整生命周期管理
- 支持 runC 和其他 OCI 兼容的运行时
- Kubernetes 等编排系统中广泛使用
### 容器规范标准
Docker 积极参与 Open Container Initiative (OCI) 的制定推动了以下规范的发展
- **Image Spec**容器镜像格式规范
- **Runtime Spec**容器运行时接口规范
- **Distribution Spec**容器镜像分发规范
### 架构演变的优势
LXC libcontainer runC/containerd 的演变提供了以下优势
1. 减少外部依赖
2. 提高运行效率
3. 遵循行业标准OCI
4. 增强可移植性和互操作性
5. 支持多种容器运行时选择