如何获取已退出docker容器的数字退出状态?
当容器退出时,如何获取已退出docker容器的数字退出状态?,docker,exit-code,Docker,Exit Code,当容器退出时,docker ps-a显示其退出代码(滚动 如何以编程方式获取数字退出代码,而不易出错grep-ing和cut-ing?与模板一起使用: $ docker inspect c2c769c4b9ef --format='{{.State.ExitCode}}' 1 您可以使用echo: $ docker run debian bash -c "exit 1" $ echo $? 1 $ docker run debian bash -c "exit 0" $ echo $? 0
docker ps-a
显示其退出代码(滚动
如何以编程方式获取数字退出代码,而不易出错grep
-ing和cut
-ing?与模板一起使用:
$ docker inspect c2c769c4b9ef --format='{{.State.ExitCode}}'
1
您可以使用
echo
:
$ docker run debian bash -c "exit 1"
$ echo $?
1
$ docker run debian bash -c "exit 0"
$ echo $?
0
是包含的命令的退出状态,除非Docker本身存在问题(在这种情况下,状态为125),或者无法调用包含的命令(在这种情况下,状态为126)或无法调用包含的命令(在这种情况下,状态为127)
因此,当您作为子进程执行docker run
时,您可以像检索任何其他子进程一样检索退出状态:
- 在C或C++程序中,或者使用P.</LI>访问POSIX API的其他编程语言
- 在类似POSIX的shell中(实际上是指大多数Unix shell,包括
),在bash
docker运行完成后立即作为特殊
变量的内容$?
- 在Java中,用于执行docker运行的
进程的值
- 在使用的Java中,
返回的docker.waitContainer()
对象的ContainerExit
ContainerExit.statusCode()的值
$ docker run debian bash -c "exit 1"
$ echo $?
1
$ docker run debian bash -c "exit 0"
$ echo $?
0