style: apply global formatting fixes (struct, spacing, zhlint)

This commit is contained in:
Baohua Yang
2026-02-21 11:08:52 -08:00
parent ad68b2d973
commit 79ac9c639a
159 changed files with 1708 additions and 882 deletions

View File

@@ -1,8 +1,10 @@
## 16.2 如何调试 Docker
本节涵盖了相关内容与详细描述主要探讨以下几个方面
### 开启 Debug 模式
dockerd 配置文件 daemon.json默认位于 /etc/docker/中添加
dockerd 配置文件 daemon.json (默认位于 /etc/docker/) 中添加
```json
{
@@ -45,7 +47,7 @@ $ sudo kill -SIGUSR1 $(pidof dockerd)
$ docker system prune
```
如果你只是想恢复出厂设置 Docker Desktop 里也提供了相应入口
如果你只是想 恢复出厂设置 Docker Desktop 里也提供了相应入口
```bash
$ sudo rm -rf /var/lib/docker
@@ -53,32 +55,36 @@ $ sudo rm -rf /var/lib/docker
### 常见故障排查
本节涵盖了相关内容与详细描述主要探讨以下几个方面
#### 容器启动失败
如果容器启动后立即退出可以使用 `docker logs` 查看原因
* **Exit Code 1**: 应用程序错误通常是配置错误或依赖缺失
* **Exit Code 137**: OOM (Out Of Memory)容器内存不足被内核杀掉
* **Exit Code 1**应用程序错误通常是配置错误或依赖缺失
* **Exit Code 137**OOM (Out Of Memory)容器内存不足被内核杀掉
* 检查宿主机内存
* 调整容器内存限制 (`--memory`)
* **Exit Code 127**: 命令未找到可能是 `ENTRYPOINT` `CMD` 指定的命令不存在
* **Exit Code 127**命令未找到可能是 `ENTRYPOINT` `CMD` 指定的命令不存在
#### 网络连接问题
本节涵盖了相关内容与详细描述主要探讨以下几个方面
##### 容器内部无法联网
1. 检查 Docker DNS 配置 (`/etc/docker/daemon.json`)
2. 检查宿主机防火墙 (iptables/firewalld) 是否拦截了转发
3. 容器内测试: `ping 8.8.8.8` (测试连通性), `nslookup google.com` (测试 DNS)
3. 容器内测试`ping 8.8.8.8` (测试连通性)`nslookup google.com` (测试 DNS)
##### 端口映射不通
1. 检查容器端口是否正确监听: `netstat -tunlp` (宿主机) `docker exec <container> netstat -tunlp`
1. 检查容器端口是否正确监听`netstat -tunlp` (宿主机) `docker exec <container> netstat -tunlp`
2. 确认应用监听地址是 `0.0.0.0` 而不是 `127.0.0.1`
* 如果应用监听在 `127.0.0.1`只有容器内部能访问映射到宿主机外部也无法被外部请求访问
#### 镜像拉取失败
* **connection refused**: 检查网络或代理设置
* **image not found**: 检查镜像名称和 Tag 拼写
* **EOF / timeout**: 网络不稳定尝试配置镜像加速器
* **connection refused**检查网络或代理设置
* **image not found**检查镜像名称和 Tag 拼写
* **EOF / timeout**网络不稳定尝试配置镜像加速器