style(docs): standardize heading formats and numbering

- Enforce Level 1-3 structural numbering based on SUMMARY.md hierarchy
- Remove structural numbering from Level 4+ headings
- Eliminate single child headings by converting to bold text
- Auto-inject summary text for headings with multiple children missing intro text
- Exclude Appendix chapters from structural numbering
- Avoid modifying code block contents
- Add script to detect non-standard English usage in headers
This commit is contained in:
Baohua Yang
2026-02-21 22:40:33 -08:00
parent 33af380be1
commit 175aaae48a
136 changed files with 1015 additions and 766 deletions

View File

@@ -2,7 +2,7 @@
本节将详细介绍 Docker 容器的启动方式包括新建启动和重新启动已停止的容器
### 启动方式概述
### 5.1.1 启动方式概述
启动容器有两种方式
@@ -11,7 +11,7 @@
由于 Docker 容器非常轻量实际使用中常常是随时删除和新建容器而不是反复重启同一个容器
### 新建并启动
### 5.1.2 新建并启动
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -61,7 +61,7 @@ bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr
root@af8bae53bdd3:/# exit # 退出容器
```
### docker run 的完整流程
### 5.1.3 docker run 的完整流程
执行 `docker run` Docker 在后台完成以下操作
@@ -82,7 +82,7 @@ flowchart TD
Step5["5. 命令执行完毕,容器停止"]
```
### 常用启动选项
### 5.1.4 常用启动选项
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -161,7 +161,7 @@ $ docker run -m 512m nginx
$ docker run --cpus=1.5 nginx
```
### 启动已终止容器
### 5.1.5 启动已终止容器
使用 `docker start` 重新启动已停止的容器
@@ -181,7 +181,7 @@ $ docker start myubuntu
$ docker start -ai myubuntu
```
### 容器内进程的特点
### 5.1.6 容器内进程的特点
容器内只运行指定的应用程序及其必需资源
@@ -196,7 +196,7 @@ root@ba267838cc1b:/# ps
> 💡 笔者提示容器内的 PID 1 进程很重要它是容器的主进程该进程退出则容器停止详见[后台运行](5.2_daemon.md)章节
### 常见问题
### 5.1.7 常见问题
本节涵盖了相关内容与详细描述主要探讨以下几个方面

View File

@@ -2,7 +2,7 @@
在生产环境中我们通常需要容器持续运行不受终端关闭的影响本节将深入讲解如何让容器在后台运行以及理解容器生命周期的核心概念
### 核心概念前台 vs 后台
### 5.2.1 核心概念前台 vs 后台
当你在终端运行一个程序时有两种模式
@@ -11,7 +11,7 @@
Docker 容器默认是 **前台运行** 使用 `-d` (detach) 参数可以让容器在后台运行
### 基本使用
### 5.2.2 基本使用
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -49,7 +49,7 @@ $ docker run -d ubuntu:24.04 /bin/sh -c "while true; do echo hello world; sleep
- 终端立即释放可以继续执行其他命令
- 输出不会直接显示 (需要用 `docker logs` 查看)
### 深入理解容器为什么会 立即退出
### 5.2.3 深入理解容器为什么会 立即退出
> **这是初学者最常遇到的困惑** 理解这个问题你就理解了 Docker 的核心设计理念
@@ -97,7 +97,7 @@ flowchart TD
| `docker run -d nginx` 后改了配置 | 配置错误导致 nginx 启动失败 | 查看 `docker logs` |
| 自定义镜像容器启动即退 | Dockerfile CMD 执行完毕 | 确保 CMD 是前台进程 |
### 查看后台容器
### 5.2.4 查看后台容器
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -139,7 +139,7 @@ $ docker container ls -a
加上 `-a` 参数可以看到所有容器包括已停止的这对于调试 容器启动即退出 的问题非常有用
### 最佳实践
### 5.2.5 最佳实践
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -205,7 +205,7 @@ $ docker logs -f myapp
$ docker logs -t myapp
```
### 常见问题排查
### 5.2.6 常见问题排查
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -252,7 +252,7 @@ $ docker attach mycontainer
> **注意**`attach` 会连接到容器的主进程如果主进程不是交互式的你可能只能看到输出使用 `Ctrl+P` `Ctrl+Q` 可以安全退出而不停止容器
### 延伸阅读
### 5.2.7 延伸阅读
- [进入容器](5.4_attach_exec.md)如何进入正在运行的容器执行命令
- [容器日志](../appendix/20.1_best_practices.md)生产环境的日志管理最佳实践

View File

@@ -2,7 +2,7 @@
本节将介绍如何终止一个运行中的容器以及几种不同的终止方式及其区别
### 终止方式概述
### 5.3.1 终止方式概述
终止容器有三种方式
@@ -14,7 +14,7 @@
---
### docker stop (推荐)
### 5.3.2 docker stop (推荐)
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -67,7 +67,7 @@ $ docker stop $(docker ps -q)
---
### docker kill
### 5.3.3 docker kill
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -104,7 +104,7 @@ $ docker kill -s TERM mycontainer
---
### 容器自动终止
### 5.3.4 容器自动终止
容器的生命周期与主进程绑定主进程退出时容器自动停止
@@ -121,7 +121,7 @@ $ docker run ubuntu echo "Hello" # echo 执行完 → 容器停止
---
### 查看已停止的容器
### 5.3.5 查看已停止的容器
运行以下命令
@@ -144,7 +144,7 @@ c5d3a5e8f7b2 nginx "nginx" Up 5 minutes mynginx
---
### 重新启动容器
### 5.3.6 重新启动容器
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -176,7 +176,7 @@ $ docker restart -t 30 容器名
---
### 生命周期状态图
### 5.3.7 生命周期状态图
具体内容如下
@@ -198,7 +198,7 @@ stateDiagram-v2
---
### 批量操作
### 5.3.8 批量操作
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -228,7 +228,7 @@ $ docker stop $(docker ps -q) && docker container prune -f
---
### 常见问题
### 5.3.9 常见问题
本节涵盖了相关内容与详细描述主要探讨以下几个方面

View File

@@ -2,7 +2,7 @@
本节涵盖了相关内容与详细描述主要探讨以下几个方面
### 为什么需要进入容器
### 5.4.1 为什么需要进入容器
使用 `-d` 参数启动容器后容器在后台运行以下场景需要进入容器内部操作
@@ -13,7 +13,7 @@
| **检查状态** | 查看进程网络连接文件系统 |
| **开发测试** | 交互式测试命令验证环境 |
### 两种进入方式
### 5.4.2 两种进入方式
Docker 提供两种进入容器的命令
@@ -24,7 +24,7 @@ Docker 提供两种进入容器的命令:
---
### docker exec (推荐)
### 5.4.3 docker exec (推荐)
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -121,7 +121,7 @@ root@69d137adef7a:/# # 有提示符
---
### docker attach (谨慎使用)
### 5.4.4 docker attach (谨慎使用)
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -197,7 +197,7 @@ CONTAINER ID IMAGE STATUS NAMES
---
### exec vs attach 对比
### 5.4.5 exec vs attach 对比
相关信息如下表
@@ -236,7 +236,7 @@ flowchart LR
---
### 最佳实践
### 5.4.6 最佳实践
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -283,7 +283,7 @@ $ docker debug myapp
---
### 常见问题
### 5.4.7 常见问题
本节涵盖了相关内容与详细描述主要探讨以下几个方面

View File

@@ -2,7 +2,7 @@
当我们需要迁移容器或者备份容器时可以使用 Docker 的导入和导出功能本节将介绍这两个命令的使用方法
### 导出容器
### 5.5.1 导出容器
如果要导出本地某个容器可以使用 `docker export` 命令
```bash
@@ -14,7 +14,7 @@ $ docker export 7691a814370e > ubuntu.tar
这样将导出容器快照到本地文件
### 导入容器快照
### 5.5.2 导入容器快照
可以使用 `docker import` 从容器快照文件中再导入为镜像例如

View File

@@ -2,7 +2,7 @@
随着容器的创建和停止系统中会积累大量的容器本节将介绍如何删除不再需要的容器以及如何清理所有停止的容器
### 基本用法
### 5.6.1 基本用法
使用 `docker rm` 删除已停止的容器
@@ -14,7 +14,7 @@ $ docker rm 容器名或ID
---
### 删除选项
### 5.6.2 删除选项
相关信息如下表
@@ -65,7 +65,7 @@ $ docker rm -v mycontainer
---
### 批量删除
### 5.6.3 批量删除
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -125,7 +125,7 @@ $ docker container prune --filter "until=24h"
---
### 常用过滤条件
### 5.6.4 常用过滤条件
`docker ps` 的过滤条件可以配合 `rm` 使用
@@ -158,7 +158,7 @@ $ docker rm $(docker ps -aq -f status=created)
---
### 容器与镜像的依赖关系
### 5.6.5 容器与镜像的依赖关系
> 有容器依赖的镜像无法删除
@@ -176,7 +176,7 @@ $ docker image rm nginx
---
### 清理策略建议
### 5.6.6 清理策略建议
本节涵盖了相关内容与详细描述主要探讨以下几个方面
@@ -235,7 +235,7 @@ docker system df
---
### 常见问题
### 5.6.7 常见问题
本节涵盖了相关内容与详细描述主要探讨以下几个方面

View File

@@ -1,4 +1,4 @@
## 本章小结
## 5.7 本章小结
相关信息如下表
@@ -9,7 +9,7 @@
| 后台运行 | `docker run -d` | 用于服务类应用 |
| 启动已停止的容器 | `docker start` | 重用已有容器 |
### 延伸阅读
### 5.7.1 延伸阅读
- [后台运行](5.2_daemon.md)理解 `-d` 参数和容器生命周期
- [进入容器](5.4_attach_exec.md)操作运行中的容器
@@ -24,7 +24,7 @@
| 重启 | `docker restart` | 停止后立即启动 |
| 停止全部 | `docker stop $(docker ps -q)` | 停止所有运行中容器 |
### 延伸阅读
### 5.7.2 延伸阅读
- [启动容器](../05_container/5.1_run.md)容器启动详解
- [删除容器](5.6_rm.md)清理容器
@@ -36,7 +36,7 @@
| 执行单条命令 | `docker exec 容器名 命令` |
| 查看主进程输出 | `docker attach 容器名` (慎用)|
### 延伸阅读
### 5.7.3 延伸阅读
- [后台运行](5.2_daemon.md)理解容器主进程
- [查看容器](5.1_run.md)列出和过滤容器
@@ -50,7 +50,7 @@
| 清理所有已停止容器 | `docker container prune` |
| 删除所有容器 | `docker rm -f $(docker ps -aq)` |
### 延伸阅读
### 5.7.4 延伸阅读
- [终止容器](5.3_stop.md)优雅停止容器
- [删除镜像](../04_image/4.3_rm.md)清理镜像