🧱 一、 容器状态与生命周期(环境稳不稳)

命令核心作用测试实战场景
docker ps查看当前运行中的容器检查测试环境的服务是不是活着的。
docker ps -a查看所有容器(含已停止的)服务挂了/打不开时,看它是不是闪退了(Exited)。
docker run创建并启动一个新容器核心命令。日常用来起测试数据库、Mock服务等。
docker stop [容器名]停止运行中的容器模拟服务器宕机、断网容灾测试。
docker start [容器名]启动一个已停止的容器恢复被关闭的测试服务。
docker restart [容器名]重启容器修改了容器内配置文件后,使其生效。
docker rm -f [容器名]强制删除容器测试环境推倒重来,或者清理过期的测试容器。

👉 docker run 黄金组合参数模板:

Bash

docker run -d -p 8080:80 --name test-nginx --restart=always -v /my/log:/var/log nginx:latest
# -d: 后台运行  -p: 端口映射(宿主机:容器)  --name: 取别名  --restart=always: 崩溃自启  -v: 挂载日志/数据

🔥 二、 日志查看与故障定位(测试核心中的核心)

命令核心作用测试实战场景
docker logs [容器名]查看容器的所有日志回溯查看之前发生过的错误。
docker logs -f --tail 100 [容器名]实时查看最后100行日志最高频。在前端点下“提交”,眼睛死死盯着这个窗口看有没有刷出 Exception 报错。
docker logs [容器名] | grep "ERROR"过滤包含 ERROR 的日志快速筛选错误信息,不用在海量日志里肉眼找。
docker logs [容器名] | grep -A 5 -B 5 "NullPointer"查看关键词前后各5行的日志抓取 Java 空指针异常时完整的错误堆栈信息,方便提 Bug 单。

🔥 三、 进入容器内部(现场调查)

命令核心作用测试实战场景
docker exec -it [容器名] bash以交互模式进入容器内部高频。进去查看配置文件(如 application.yml)里的 IP、数据库连接是否正确。
docker exec -it [容器名] sh如果上面提示找不到 bash,用这个部分精简版镜像(如 Alpine)没装 bash,必须用 sh 才能进去。

📦 四、 镜像与磁盘管理(环境准备与清理)

命令核心作用测试实战场景
docker images查看本地已下载的镜像核对开发给的镜像版本(TAG)和镜像 ID 是否是最新的。
docker pull [镜像名:版本号]从仓库下载指定版本的镜像快速拉取特定版本的组件(如 mysql:5.7)来复现历史 Bug。
docker rmi [镜像ID]删除本地镜像释放磁盘空间。注意:必须先删掉使用该镜像的容器。
docker system df查看 Docker 占用的磁盘空间高阶排障。测试环境突发 500 错,检查是不是磁盘满了。
docker system prune -a一键深度清理所有不用的一堆东西清理长期做自动化测试、频繁构建留下的无用镜像和死容器,瞬间释放大片空间。

更多推荐