首页/云/Docker 容器速查/脚本批量读取退出码
容器排障52 条

脚本批量读取退出码

批量拿退出码的两个姿势:docker wait 同步等待返回码、inspect 事后读取 ExitCode;配合循环可给一批任务出结果表。

Docker 容器速查云更新于 2026-10-12
docker wait阻塞直到容器退出并输出退出码(同步场景)
inspect读取已退出容器的 State.ExitCode(事后审计)
联动die 事件里也带 exitCode 属性

示例

示例
docker run -d --name job1 app/batch:1.0
docker wait job1
for c in $(docker ps -aq --filter name=job); do echo "$c $(docker inspect -f '{{.State.ExitCode}}' $c)"; done
docker events --filter event=die --format '{{.Actor.Attributes.name}} {{.Actor.Attributes.exitCode}}'
批量巡检脚本建议输出 容器名 + 退出码 + 结束时间,方便与日志时间线对齐。

易错点

  • wait 只对已存在容器有效,容器名写错会立刻报错而不是等待
  • events 的历史窗口有限,长时间前的退出要用 inspect 或集中日志回溯

数据来源与参考

  • Docker 官方 CLI 参考:docker wait、docker inspect、docker events(docs.docker.com)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌