1、容器无法启动

# 查看容器启动日志

docker logs <容器ID/名称>

docker logs --tail 100 <容器ID/名称>

# 打开docker服务debug日志

vi /etc/docker/daemon.json

{

  "debug": true,

  ......

}

systemctl reload docker

journalctl -u docker.service --since "5 minutes ago"

# 检查容器配置

docker inspect <容器ID/名称> | jq '.[] | .Config'

# 尝试以交互方式启动调试

docker run -it --rm --entrypoint=/bin/sh <镜像名>

# 检查健康检查状态

docker inspect --format '{{json .State.Health}}' <容器ID> | jq .|

    sed -i 's/\\n/\n/g'

2、容器频繁重启(状态在Restarting和Exited之间切换

# 查看容器重启历史

docker inspect --format '{{.RestartCount}}' <容器ID>

docker inspect --format '{{.State.Status}}' <容器ID>

# 查看最后一次退出原因

docker inspect --format '{{.State.ExitCode}} {{.State.Error}}' <容器ID>

# 临时禁用自动重启

docker update --restart=no <容器ID>

# 限制日志大小防止磁盘占满

docker run --log-opt max-size=10m --log-opt max-file=3 <镜像名>

3、容器无响应(Hang 住)

# 检查容器状态

docker ps -a --filter "id=<容器ID>"

# 查看容器进程状态

docker top <容器ID>

# 查看容器资源使用

docker stats --no-stream <容器ID>

# 收集容器详细信息用于分析

docker inspect <容器ID> > /tmp/container_inspect.json

docker stats --no-stream <容器ID> >> /tmp/container_stats.txt

# 强制终止容器

docker kill <容器ID>

# 清理后重新启动

docker rm <容器ID>

docker run <原启动参数>

更多推荐