# https://github.com/yeasy/docker_practice 项目说明书

生成时间：2026-07-06 20:53:14 UTC

## 目录

- [书籍概览与学习路径](#page-overview)
- [多平台 Docker 安装指南](#page-installation)
- [镜像、容器与仓库核心操作](#page-core-operations)
- [数据、网络、编排与生态进阶](#page-advanced-ecosystem)

<a id='page-overview'></a>

## 书籍概览与学习路径

### 相关页面

相关主题：[多平台 Docker 安装指南](#page-installation), [镜像、容器与仓库核心操作](#page-core-operations), [数据、网络、编排与生态进阶](#page-advanced-ecosystem)

<details>
<summary>相关源码文件</summary>

以下源码文件用于生成本页说明：

- [README.md](https://github.com/yeasy/docker_practice/blob/main/README.md)
- [SUMMARY.md](https://github.com/yeasy/docker_practice/blob/main/SUMMARY.md)
- [01_introduction/README.md](https://github.com/yeasy/docker_practice/blob/main/01_introduction/README.md)
- [01_introduction/1.1_quickstart.md](https://github.com/yeasy/docker_practice/blob/main/01_introduction/1.1_quickstart.md)
- [01_introduction/1.2_what.md](https://github.com/yeasy/docker_practice/blob/main/01_introduction/1.2_what.md)
- [01_introduction/1.3_why.md](https://github.com/yeasy/docker_practice/blob/main/01_introduction/1.3_why.md)
</details>

# 书籍概览与学习路径

## 书籍定位与目标读者

本仓库是一本以 GitBook 形式组织的开源 Docker 技术书籍，项目原名为《Docker — 从入门到实践》，后更名为《Docker 实战》。全书以中文撰写，覆盖从容器基础概念到 Kubernetes、容器云、源码解析等进阶主题，旨在为开发者提供一条从零起步、循序渐进的 Docker 学习路径。资料来源：[README.md:1-40]()

书籍的目标读者主要包括：

- **后端与运维工程师**：希望在生产环境落地容器化技术的从业人员。
- **DevOps 学习者**：需要系统化理解 Docker 与周边生态（如 Compose、Swarm、Kubernetes）的读者。
- **计算机相关专业学生**：希望通过一本书完成 Docker 入门与实战的初学者。

由于内容为中文，社区多次收到希望提供英文译版的请求，Issue #363 与 #510 均围绕 “english translation” 展开讨论，这也反映了该书在海外华人及翻译辅助学习群体中的影响力。资料来源：[README.md:1-40]()

## 整体目录结构与编排思路

全书采用"章—节"两级结构，`SUMMARY.md` 是整本书的目录索引，决定了章节顺序与层级。整本书大体分为以下几大模块：

| 模块 | 章节范围 | 核心内容 |
|------|----------|----------|
| 入门篇 | 01_introduction | Docker 概念、优势、快速上手 |
| 安装篇 | 02_install | 多平台安装方法（Linux、macOS、Windows） |
| 基础使用 | 03~05 | 镜像、容器、数据卷、网络 |
| 进阶使用 | 06~10 | Compose、Swarm、Swarm mode、私有仓库 |
| 生态与实战 | 11~16 | Kubernetes、容器云、安全、底层实现、源码解析、附录 |

资料来源：[SUMMARY.md:1-150]()

这种从"概念 → 安装 → 基础 → 进阶 → 生态 → 源码"的递进结构，使得读者可以在每一阶段巩固前序知识，再进入更高阶的主题。

## 推荐学习路径

第一章节的 `01_introduction/README.md` 为初学者提供了明确的开篇指引，建议读者按以下顺序进入：

1. **快速体验（1.1_quickstart.md）**：无需安装 Docker，直接在 [Play with Docker](https://labs.play-with-docker.com/) 等在线环境中跑通第一个容器，建立感性认识。资料来源：[01_introduction/1.1_quickstart.md:1-60]()
2. **认识 Docker（1.2_what.md）**：理解 Docker 的本质——一种操作系统层面的虚拟化方案，以及它与虚拟机的差异。资料来源：[01_introduction/1.2_what.md:1-80]()
3. **理解 Docker 价值（1.3_why.md）**：从交付、部署、隔离、效率等维度回答"为什么要用 Docker"。资料来源：[01_introduction/1.3_why.md:1-80]()

完成入门篇后，应优先掌握**安装与基础使用**章节，因为容器、镜像、网络等概念会贯穿后续所有内容。在基础牢固后，可按需选择方向：关注应用编排的读者重点学习 Docker Compose（06 章）；关注集群与生产部署的读者应学习 Swarm（07 章）或 Kubernetes（11 章）；希望深入原理的读者可阅读源码与底层实现章节（14、15 章）。

```mermaid
graph TD
    A[入门篇: 概念与快速体验] --> B[安装篇: 多平台部署]
    B --> C[基础使用: 镜像/容器/网络/数据卷]
    C --> D{方向选择}
    D --> E[Compose 单机编排]
    D --> F[Swarm/K8s 集群]
    D --> G[底层原理与源码]
    E --> H[实战案例与附录]
    F --> H
    G --> H
```

需要注意的是，社区中曾反馈部分平台的安装指令存在拼写错误或过时问题，例如 Issue #461 指出 Ubuntu 安装步骤中的拼写错误，Issue #484 报告 macOS brew 安装指令错误。读者在按路径学习时，建议同时参考官方文档核对安装命令。资料来源：[README.md:1-40]()

## 项目状态与社区反馈

截至最新公开版本 v1.11.0，书籍已经过多个版本的迭代更新，主要变化集中在 Kubernetes 章节内容扩充、Compose V2 语法更新以及新平台（如 Apple Silicon）安装说明补充。资料来源：[README.md:1-40]()

关于许可证，社区在 Issue #394 中提问"What is the license of this repo?"，希望基于本书进行二次创作，作者随后在仓库中补充了明确的许可证声明，便于读者合法地引用与再发行内容。

综合来看，本书既可作为系统化的 Docker 入门教材，也可作为随时翻阅的工具书。读者只需按照"入门 → 安装 → 基础 → 进阶 → 生态"的路径循序渐进，即可在数十小时内建立完整的 Docker 知识体系，并具备向 Kubernetes 等容器编排平台迁移的能力。资料来源：[SUMMARY.md:1-150]()

---

<a id='page-installation'></a>

## 多平台 Docker 安装指南

### 相关页面

相关主题：[书籍概览与学习路径](#page-overview), [镜像、容器与仓库核心操作](#page-core-operations)

<details>
<summary>相关源码文件</summary>

以下源码文件用于生成本页说明：

- [03_install/README.md](https://github.com/yeasy/docker_practice/blob/main/03_install/README.md)
- [03_install/3.1_ubuntu.md](https://github.com/yeasy/docker_practice/blob/main/03_install/3.1_ubuntu.md)
- [03_install/3.2_debian.md](https://github.com/yeasy/docker_practice/blob/main/03_install/3.2_debian.md)
- [03_install/3.3_fedora.md](https://github.com/yeasy/docker_practice/blob/main/03_install/3.3_fedora.md)
- [03_install/3.4_centos.md](https://github.com/yeasy/docker_practice/blob/main/03_install/3.4_centos.md)
- [03_install/3.5_raspberry-pi.md](https://github.com/yeasy/docker_practice/blob/main/03_install/3.5_raspberry-pi.md)
</details>

# 多平台 Docker 安装指南

## 概述与适用范围

`03_install/` 目录是仓库的核心章节之一，专门面向读者交付 Docker Engine 在不同操作系统下的安装流程。章节入口 `03_install/README.md` 充当导航索引，按平台聚合 Ubuntu、Debian、Fedora、CentOS、Raspberry Pi 等多个子章节，使读者可以按目标主机操作系统快速定位安装步骤。

安装章节采用统一的结构化写法：先介绍前置环境与系统要求，再给出 `apt`、`dnf`、`yum` 等发行版包管理命令，最后补充镜像加速、验证安装、卸载等可操作步骤。这种"一平台一文件"的拆分方式降低了章节间耦合，便于社区贡献者单独更新某一平台的安装说明。

资料来源：[03_install/README.md:1-20]()

## Linux 主流发行版安装

### Ubuntu / Debian（基于 APT）

`03_install/3.1_ubuntu.md` 与 `03_install/3.2_debian.md` 描述了基于 Debian 系的安装路径，推荐流程为先卸载旧版本（如 `docker`、`docker-engine`、`docker.io`），然后添加 Docker 官方 GPG 密钥与 APT 源，再通过 `apt-get update && apt-get install docker-ce` 完成安装。两个平台共享了几乎相同的源配置模板，仅在 `lsb_release -cs` 输出的发行版代号（如 `focal`、`jammy`、`bullseye`、`bookworm`）上存在差异。

两个章节共同强调：若使用国内网络环境，应配置镜像仓库（如阿里云、中科大）以加速 `docker-ce` 及其依赖下载。这是社区高频反馈点——在 Issue #461 中，用户报告 Ubuntu 安装文档存在拼写问题，仓库维护者通过更新源配置脚本进行了修正。

资料来源：[03_install/3.1_ubuntu.md:1-40]()、[03_install/3.2_debian.md:1-40]()

### Fedora / CentOS（基于 DNF/YUM）

`03_install/3.3_fedora.md` 与 `03_install/3.4_centos.md` 覆盖了 Red Hat 系发行版。Fedora 章节使用 `dnf` 包管理器，CentOS 章节考虑到 CentOS 7 / CentOS 8 共存的历史背景，分别给出了 `yum`（EL7）与 `dnf`（EL8）两条安装路径。两个文件均通过 `yum-config-manager --add-repo` 添加 `docker-ce.repo`，并利用 `--setopt=install_weak_deps=False` 避免安装非必要依赖。

需要特别注意：CentOS 章节明确指出 Docker 官方支持的是 CentOS Stream 或第三方维护的 RHEL 兼容发行版，而非已停止维护的 CentOS Linux 8，这与发行版生命周期密切相关。

资料来源：[03_install/3.3_fedora.md:1-30]()、[03_install/3.4_centos.md:1-30]()

## ARM 平台：树莓派

`03_install/3.5_raspberry-pi.md` 面向 Raspberry Pi 系列设备，安装方式与 Debian/Ubuntu 章节高度相似，但额外强调两点：一是必须确认树莓派 CPU 架构（ARMv7 / ARMv8）以选择正确的 `docker-ce` 二进制包；二是官方推荐使用 Raspberry Pi OS（基于 Debian）而非其他第三方系统，以避免内核兼容性问题。

该章节还提示用户在烧录完系统镜像后，通过 `uname -m` 验证架构，并准备 swap 分区以应对低内存场景下的 OOM 风险。

资料来源：[03_install/3.5_raspberry-pi.md:1-30]()

## 跨平台通用事项与社区反馈

### 安装后验证

所有平台章节末尾均包含统一的验证流程：执行 `docker version` 查看客户端与服务端版本，并通过 `docker run hello-world` 拉取并运行测试镜像以验证守护进程与网络链路可用性。`03_install/README.md` 在章节索引中将这一验证流程作为读者自查清单。

### 镜像加速与代理

考虑到国内网络环境，`03_install/3.1_ubuntu.md` 与 `03_install/3.4_centos.md` 均提供了 `/etc/docker/daemon.json` 的镜像加速配置模板，通过 `registry-mirrors` 字段写入阿里云、腾讯云等镜像地址，并要求执行 `systemctl reload docker` 使配置生效。

### 已知问题与社区讨论

- Issue #484 报告 macOS 通过 `brew` 安装 Docker 时存在指令错误，安装章节虽未直接覆盖 macOS（Docker Desktop），但与镜像加速思路相关。
- Issue #394 询问仓库许可证（License），虽与安装无直接关系，但反映了用户希望二次分发文档时对许可条款的关注。

资料来源：[03_install/README.md:1-20]()、[03_install/3.1_ubuntu.md:60-80]()、[03_install/3.4_centos.md:60-80]()

## 平台速查表

| 平台 | 包管理器 | 主要安装命令 | 参考章节 |
| --- | --- | --- | --- |
| Ubuntu | apt | `apt-get install docker-ce` | 3.1 |
| Debian | apt | `apt-get install docker-ce` | 3.2 |
| Fedora | dnf | `dnf install docker-ce` | 3.3 |
| CentOS 7 | yum | `yum install docker-ce` | 3.4 |
| CentOS 8+ | dnf | `dnf install docker-ce` | 3.4 |
| Raspberry Pi OS | apt | `apt-get install docker-ce` | 3.5 |

资料来源：[03_install/3.1_ubuntu.md:20-40]()、[03_install/3.3_fedora.md:20-40]()、[03_install/3.4_centos.md:20-40]()、[03_install/3.5_raspberry-pi.md:20-40]()

---

<a id='page-core-operations'></a>

## 镜像、容器与仓库核心操作

### 相关页面

相关主题：[书籍概览与学习路径](#page-overview), [多平台 Docker 安装指南](#page-installation), [数据、网络、编排与生态进阶](#page-advanced-ecosystem)

<details>
<summary>相关源码文件</summary>

以下源码文件用于生成本页说明：

- [02_basic_concept/README.md](https://github.com/yeasy/docker_practice/blob/main/02_basic_concept/README.md)
- [02_basic_concept/2.1_image.md](https://github.com/yeasy/docker_practice/blob/main/02_basic_concept/2.1_image.md)
- [02_basic_concept/2.2_container.md](https://github.com/yeasy/docker_practice/blob/main/02_basic_concept/2.2_container.md)
- [02_basic_concept/2.3_repository.md](https://github.com/yeasy/docker_practice/blob/main/02_basic_concept/2.3_repository.md)
- [04_image/README.md](https://github.com/yeasy/docker_practice/blob/main/04_image/README.md)
- [04_image/4.1_pull.md](https://github.com/yeasy/docker_practice/blob/main/04_image/4.1_pull.md)
</details>

# 镜像、容器与仓库核心操作

## 概述与三大核心概念

Docker 的核心抽象由镜像（Image）、容器（Container）与仓库（Repository）三部分组成，三者相互配合构成了 Docker 的使用闭环。镜像是一个只读的文件系统模板，包含了运行应用所需的代码、运行时、库和配置；容器是镜像的运行实例，在镜像之上叠加一层可写层；仓库则是镜像集中存储与分发的中心。资料来源：[02_basic_concept/README.md:1-30]()

下图给出了三者关系与典型操作流程：

```mermaid
flowchart LR
    R[Registry 仓库] -- docker pull --> I[Image 镜像]
    I -- docker run --> C[Container 容器]
    C -- docker commit --> I
    I -- docker push --> R
```

镜像采用分层结构与 Union FS，多个镜像可以共享底层，并支持通过 `docker tag` 添加多个标签。资料来源：[02_basic_concept/2.1_image.md:1-40]()

容器在镜像之上增加了一层薄薄的可写层，所有运行时变更均落在该层；可通过 `docker commit` 将变更固化回新镜像，也可借助 Dockerfile 重新构建以保证可复现性。资料来源：[02_basic_concept/2.2_container.md:1-50]()

## 镜像核心操作

镜像操作覆盖「获取—查看—删除—构建—推送」全生命周期。最常用的拉取命令是 `docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签]`，例如 `docker pull ubuntu:18.04`，默认从 Docker Hub 拉取。资料来源：[04_image/4.1_pull.md:1-40]()

常用命令速查：

| 操作 | 命令 | 说明 |
|------|------|------|
| 拉取 | `docker pull` | 从仓库下载镜像 |
| 列出 | `docker images` / `docker image ls` | 查看本地镜像 |
| 删除 | `docker image rm` / `docker rmi` | 移除本地镜像 |
| 构建 | `docker build` | 基于 Dockerfile 构建 |
| 推送 | `docker push` | 上传镜像到仓库 |
| 打标签 | `docker tag` | 为镜像添加别名 |

资料来源：[04_image/README.md:1-60]()

虚悬镜像（`<none>:<none>`）是常见的清理对象，可通过 `docker image prune` 一键回收。资料来源：[04_image/README.md:20-50]()

## 容器核心操作

容器操作分为「创建—启动—进入—停止—删除」等阶段。典型流程为：

1. `docker run -it ubuntu:18.04 /bin/bash`：新建并启动一个交互式容器。
2. `docker ps` / `docker ps -a`：查看运行中或全部容器。
3. `docker start` / `docker restart` / `docker stop` / `docker kill`：控制容器生命周期。
4. `docker exec -it <id> /bin/bash`：在已运行的容器中执行命令（推荐方式）。
5. `docker rm`：删除已停止的容器；`docker container prune` 清理所有已退出容器。

资料来源：[02_basic_concept/2.2_container.md:20-80]()

守护态运行常使用 `-d` 参数，并通过 `--name` 指定名称以便后续管理。导入导出场景可使用 `docker export` 与 `docker import`，与镜像的 `save/load` 形成对照。资料来源：[02_basic_concept/2.2_container.md:40-90]()

## 仓库核心操作

Docker 仓库分为公共仓库（如 Docker Hub、Quay）与私有仓库（如 Harbor、Docker Registry）。最权威的公共仓库是 Docker Hub，可通过 `docker login` / `docker logout` 完成认证。资料来源：[02_basic_concept/2.3_repository.md:1-40]()

推送流程为：先 `docker tag` 将本地镜像命名为 `用户名/仓库名:标签`，再执行 `docker push` 上传；拉取时使用 `docker pull 用户名/仓库名:标签`。私有仓库需在 `daemon.json` 中配置 `--insecure-registry` 或自签证书。资料来源：[02_basic_concept/2.3_repository.md:30-70]()

## 常见问题与社区关注点

社区中反复出现的请求包括英文翻译、跨平台安装指令（如 macOS brew 安装）以及 Ubuntu 安装文档的拼写错误，间接反映出新手对「先装好 Docker、再使用镜像/容器/仓库」这条主线的强烈需求。资料来源：[GitHub Issues #363, #510, #484, #461](https://github.com/yeasy/docker_practice/issues)

掌握上述三类核心操作，即可在本地完成绝大多数 Docker 使用场景，并为进一步学习网络、数据卷与编排打下基础。

---

<a id='page-advanced-ecosystem'></a>

## 数据、网络、编排与生态进阶

### 相关页面

相关主题：[书籍概览与学习路径](#page-overview), [镜像、容器与仓库核心操作](#page-core-operations)

<details>
<summary>相关源码文件</summary>

以下源码文件用于生成本页说明：

- [08_data/README.md](https://github.com/yeasy/docker_practice/blob/main/08_data/README.md)
- [08_data/8.1_volume.md](https://github.com/yeasy/docker_practice/blob/main/08_data/8.1_volume.md)
- [08_data/8.2_bind-mounts.md](https://github.com/yeasy/docker_practice/blob/main/08_data/8.2_bind-mounts.md)
- [08_data/8.3_tmpfs.md](https://github.com/yeasy/docker_practice/blob/main/08_data/8.3_tmpfs.md)
- [09_network/README.md](https://github.com/yeasy/docker_practice/blob/main/09_network/README.md)
- [09_network/9.1_dns.md](https://github.com/yeasy/docker_practice/blob/main/09_network/9.1_dns.md)
- [10_orchestration/README.md](https://github.com/yeasy/docker_practice/blob/main/10_orchestration/README.md)
- [10_orchestration/10.1_compose.md](https://github.com/yeasy/docker_practice/blob/main/10_orchestration/10.1_compose.md)
</details>

# 数据、网络、编排与生态进阶

## 概述

在掌握镜像与容器的基础操作后，学习者通常需要进一步深入四大进阶主题：持久化数据管理、容器网络配置、多容器编排与云原生生态工具。这些主题构成了从单机 Docker 使用迈向生产环境部署的关键桥梁，也是社区讨论度最高的核心章节。

资料来源：[08_data/README.md:1-15]()

## 1. 数据持久化机制

Docker 提供三种主要的数据持久化方案，分别面向不同的使用场景。

### Volume（数据卷）

Volume 由 Docker 统一管理，默认存储于 `/var/lib/docker/volumes/` 目录下，其优势在于与容器生命周期解耦、支持跨平台使用以及便于备份迁移。

```bash
docker volume create my-vol
docker run -d -v my-vol:/app/data nginx
```

资料来源：[08_data/8.1_volume.md:1-30]()

### Bind Mounts（绑定挂载）

Bind Mounts 直接将宿主机上的任意文件或目录挂载到容器中，适合开发调试场景，能实现宿主机与容器之间的实时同步。但其依赖宿主机的目录结构，可移植性较差。

资料来源：[08_data/8.2_bind-mounts.md:1-20]()

### tmpfs 挂载

tmpfs 仅存在于内存中，容器停止后数据随即消失，适合存放敏感凭证或临时状态文件，可有效避免敏感信息落入磁盘。

资料来源：[08_data/8.3_tmpfs.md:1-25]()

### 三种方式对比

| 特性 | Volume | Bind Mounts | tmpfs |
|------|--------|-------------|-------|
| 存储位置 | Docker 管理目录 | 宿主机任意位置 | 内存 |
| 数据持久化 | 强 | 强 | 无 |
| 跨主机迁移 | 支持 | 不支持 | 不适用 |
| 典型场景 | 生产数据库 | 开发调试 | 敏感临时数据 |

## 2. 容器网络与 DNS

Docker 网络允许容器之间以及容器与外部网络之间进行通信。`09_network/README.md` 介绍了 bridge、host、overlay、macvlan 等多种网络驱动，分别对应单机、跨主机以及混合云等不同部署需求。

资料来源：[09_network/README.md:1-20]()

### 自定义 DNS 配置

在 `09_network/9.1_dns.md` 中，详细说明了如何通过 `--dns`、`--dns-search` 与 `--dns-opt` 参数为容器自定义 DNS 服务器与搜索域，以满足企业内网或混合云场景下的域名解析需求。

```bash
docker run -d --dns 8.8.8.8 --dns-search example.com nginx
```

资料来源：[09_network/9.1_dns.md:1-35]()

## 3. 容器编排

当应用拆分为多个容器后，需要统一的编排工具进行集中管理。`10_orchestration` 章节系统覆盖了 Docker Compose、Docker Swarm 与 Kubernetes 等主流方案。

### Docker Compose

Docker Compose 通过 `docker-compose.yml` 文件定义多容器应用，实现一键启动、停止与扩缩容。典型结构包含 `services`、`networks` 与 `volumes` 三个顶层字段，分别用于描述服务依赖、网络拓扑与数据卷声明。

资料来源：[10_orchestration/10.1_compose.md:1-40]()

### Swarm 与 Kubernetes

对于更大规模的集群场景，文档进一步介绍了 Swarm 模式下的 Service 与 Stack 概念，以及 Kubernetes 中的 Pod、Deployment 与 Service 等核心抽象。Swarm 与 Docker 引擎深度集成，适合中小型集群；Kubernetes 功能更丰富，是大型生产环境的首选。

资料来源：[10_orchestration/README.md:1-25]()

## 4. 云原生生态进阶

在 Docker 基础之上，生态中涌现出大量互补工具，可按职责划分为以下几类：

- **镜像构建**：BuildKit、Buildx 提供更高效的并行构建与多架构支持
- **镜像仓库**：Harbor、Distribution 提供企业级镜像管理与权限控制
- **监控日志**：Prometheus、cAdvisor、ELK 构成可观测性体系
- **安全扫描**：Trivy、Anchore 用于镜像漏洞扫描与合规审计

这些工具共同构成了完整的容器化技术栈，帮助用户从单一容器走向完整的云原生平台。社区中关于中文翻译请求（#363、#510）以及 macOS 安装问题（#484）等讨论也反映出，用户在接触这些进阶生态工具时，往往希望获得系统化的入门指引与排错支持。

---

<!-- evidence_pipeline_checked: true -->
<!-- evidence_injected: true -->

---

## Doramagic 踩坑日志

项目：yeasy/docker_practice

摘要：发现 14 个潜在踩坑项，其中 0 个为 high/blocking；最高优先级：安装坑 - 依赖 Docker 环境。

## 1. 安装坑 · 依赖 Docker 环境

- 严重度：medium
- 证据强度：runtime_trace
- 发现：安装/运行入口包含 Docker 命令：docker run -it --rm -p 4000:80 ccr.ccs.tencentyun.com/dockerpracticesig/docker_practice:vuepress
- 对用户的影响：非工程用户可能没有 Docker，启动成本明显增加。
- 复现命令：`docker run -it --rm -p 4000:80 ccr.ccs.tencentyun.com/dockerpracticesig/docker_practice:vuepress`
- 证据：identity.distribution | https://github.com/yeasy/docker_practice | docker run -it --rm -p 4000:80 ccr.ccs.tencentyun.com/dockerpracticesig/docker_practice:vuepress

## 2. 安装坑 · 来源证据：CNCF Meshery Playground - free training resource for docker_practice community

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安装相关的待验证问题：CNCF Meshery Playground - free training resource for docker_practice community
- 对用户的影响：可能增加新用户试用和生产接入成本。
- 证据：community_evidence:github | https://github.com/yeasy/docker_practice/issues/547 | 来源讨论提到 docker 相关条件，需在安装/试用前复核。

## 3. 安装坑 · 来源证据：English translation for docker practice book

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安装相关的待验证问题：English translation for docker practice book
- 对用户的影响：可能增加新用户试用和生产接入成本。
- 证据：community_evidence:github | https://github.com/yeasy/docker_practice/issues/510 | 来源讨论提到 docker 相关条件，需在安装/试用前复核。

## 4. 安装坑 · 来源证据：There are several image cannot be displayed in PDF book

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安装相关的待验证问题：There are several image cannot be displayed in PDF book
- 对用户的影响：可能增加新用户试用和生产接入成本。
- 证据：community_evidence:github | https://github.com/yeasy/docker_practice/issues/568 | 来源讨论提到 docker 相关条件，需在安装/试用前复核。

## 5. 安装坑 · 来源证据：docker compose中关于deploy描述有误

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安装相关的待验证问题：docker compose中关于deploy描述有误
- 对用户的影响：可能增加新用户试用和生产接入成本。
- 证据：community_evidence:github | https://github.com/yeasy/docker_practice/issues/550 | 来源讨论提到 docker 相关条件，需在安装/试用前复核。

## 6. 安装坑 · 来源证据：文档错误：5.2_daemon.md 中交互模式调试的命令示例错误

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安装相关的待验证问题：文档错误：5.2_daemon.md 中交互模式调试的命令示例错误
- 对用户的影响：可能增加新用户试用和生产接入成本。
- 证据：community_evidence:github | https://github.com/yeasy/docker_practice/issues/566 | 来源讨论提到 docker 相关条件，需在安装/试用前复核。

## 7. 安装坑 · 来源证据：静态资源文件失效

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安装相关的待验证问题：静态资源文件失效
- 对用户的影响：可能增加新用户试用和生产接入成本。
- 证据：community_evidence:github | https://github.com/yeasy/docker_practice/issues/562 | 来源讨论提到 docker 相关条件，需在安装/试用前复核。

## 8. 能力坑 · 能力判断依赖假设

- 严重度：medium
- 证据强度：source_linked
- 发现：README/documentation is current enough for a first validation pass.
- 对用户的影响：假设不成立时，用户拿不到承诺的能力。
- 证据：capability.assumptions | https://github.com/yeasy/docker_practice | README/documentation is current enough for a first validation pass.

## 9. 维护坑 · 维护活跃度未知

- 严重度：medium
- 证据强度：source_linked
- 发现：未记录 last_activity_observed。
- 对用户的影响：新项目、停更项目和活跃项目会被混在一起，推荐信任度下降。
- 证据：evidence.maintainer_signals | https://github.com/yeasy/docker_practice | last_activity_observed missing

- 严重度：medium
- 证据强度：source_linked
- 发现：no_demo
- 证据：downstream_validation.risk_items | https://github.com/yeasy/docker_practice | no_demo; severity=medium

## 11. 安全/权限坑 · 存在评分风险

- 严重度：medium
- 证据强度：source_linked
- 发现：no_demo
- 对用户的影响：风险会影响是否适合普通用户安装。
- 证据：risks.scoring_risks | https://github.com/yeasy/docker_practice | no_demo; severity=medium

## 12. 安全/权限坑 · 来源证据：Security: Insecure HTTP script loading enables MITM code injection on site visitors

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安全/权限相关的待验证问题：Security: Insecure HTTP script loading enables MITM code injection on site visitors
- 对用户的影响：可能增加新用户试用和生产接入成本。
- 证据：community_evidence:github | https://github.com/yeasy/docker_practice/issues/560 | 来源类型 github_issue 暴露的待验证使用条件。

## 13. 维护坑 · issue/PR 响应质量未知

- 严重度：low
- 证据强度：source_linked
- 发现：issue_or_pr_quality=unknown。
- 对用户的影响：用户无法判断遇到问题后是否有人维护。
- 证据：evidence.maintainer_signals | https://github.com/yeasy/docker_practice | issue_or_pr_quality=unknown

## 14. 维护坑 · 发布节奏不明确

- 严重度：low
- 证据强度：source_linked
- 发现：release_recency=unknown。
- 对用户的影响：安装命令和文档可能落后于代码，用户踩坑概率升高。
- 证据：evidence.maintainer_signals | https://github.com/yeasy/docker_practice | release_recency=unknown

<!-- canonical_name: yeasy/docker_practice; human_manual_source: deepwiki_human_wiki -->
