检查docker容器是否已停止或失败

时间:2018-03-01 19:33:00

标签: docker

我试图检查(并处理所有边缘情况)容器是否已在不干净的状态下停止或退出。我正在使用'State'返回的docker inspect <container>块来尝试解决此问题。

    "State": {
        "Status": "exited",
        "Running": false,
        "Paused": false,
        "Restarting": false,
        "OOMKilled": false,
        "Dead": false,
        "Pid": 0,
        "ExitCode": 0,
        "Error": "",
        "StartedAt": "2018-03-01T18:56:19.541980678Z",
        "FinishedAt": "2018-03-01T18:56:24.618264625Z"
    },

我知道已停止的容器的'ExitCode'将是137,但那里还有很多其他信息。过滤State.ExitCode == 137是否足以过滤已停止的实例?

编辑:我应该提一下我尝试这样做的原因,而不是使用pauseunpause来管理我的容器是我想要的和带有端口绑定的容器的主动/备用安排。 paused状态的容器仍然保持其端口绑定,当它处于standby状态时,我需要将其释放。

1 个答案:

答案 0 :(得分:0)

要停止使用容器:

docker ps -f status=exited -f name={container-name}