From 625d209fa8bef9f3997b2778c5b73e9bb40d5cff Mon Sep 17 00:00:00 2001 From: yeasy Date: Sat, 2 May 2026 22:26:19 +0000 Subject: [PATCH] Fix Docker Engine 29 release date and Rootless mode history --- 04_image/4.7_internal.md | 2 +- 18_security/18.3_daemon_sec.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/04_image/4.7_internal.md b/04_image/4.7_internal.md index ef7b5da..a0cb0ef 100644 --- a/04_image/4.7_internal.md +++ b/04_image/4.7_internal.md @@ -60,7 +60,7 @@ Docker 镜像的每一层都有一个唯一的 ID,这个 ID 是根据该层的 Docker 使用联合文件系统 (Union FS) 与写时复制思路来实现这种分层挂载。传统的实现方式常见于 `overlay2`、`aufs`、`btrfs`、`zfs` 等存储驱动;而在 Docker Engine 29.0 及之后的全新安装中,默认镜像后端已经变为 containerd image store,它使用 snapshotter 来管理这些层。 -> **版本背景**:Docker Engine 29.0(发布于 2026 年 1 月)是一个重要版本分界点,在全新安装场景下默认启用 containerd image store 作为镜像存储后端。这对镜像管理、OCI 合规性和供应链安全都有深远影响。如果你的 Docker 版本低于 29.0,镜像存储仍使用传统的 classic store 路径。 +> **版本背景**:Docker Engine 29.0(发布于 2025 年 11 月)是一个重要版本分界点,在全新安装场景下默认启用 containerd image store 作为镜像存储后端。这对镜像管理、OCI 合规性和供应链安全都有深远影响。如果你的 Docker 版本低于 29.0,镜像存储仍使用传统的 classic store 路径。 虽然底层实现细节不同,但它们都遵循上述的 **分层 + CoW** 模型;因此,无论你看到的是 `overlay2` 还是 containerd snapshotter,理解镜像层、容器层和写时复制的方式都是一样重要的。 diff --git a/18_security/18.3_daemon_sec.md b/18_security/18.3_daemon_sec.md index 23adc0b..9dc873b 100644 --- a/18_security/18.3_daemon_sec.md +++ b/18_security/18.3_daemon_sec.md @@ -50,7 +50,7 @@ dockerd \ ### 18.3.3 Rootless 模式:非特权运行 -为了从根本上解决“拥有 Docker socket 就是 root”的问题,Docker 在近年推出了 **Rootless 模式**。 +为了从根本上解决“拥有 Docker socket 就是 root”的问题,Docker 自 19.03 版本(2019 年)起提供了 **Rootless 模式**。 Rootless 模式允许在完全局限于非 `root` 用户的环境中运行 Docker 守护进程(`dockerd`)和容器。该模式利用了现代 Linux 内核的 User Namespace 技术和非特权网络命名空间实现。