如何确保已确认的docker正常退出?

时间:2019-06-19 03:54:32

标签: docker

Docker有时存在,但仍然保持运行状态。

始于:

docker run -v $PWD:/host --rm -it Ubuntu_2018

“退出”后: Docker容器ls; docker容器ls -al

这仍然显示容器正在运行 如何确保Docker容器正常结束?

使用选项"--rm"并使用“ exit”退出docker应该很有必要。但有时仍然存在。

退出后,“ docker container ls; docker container ls -al”根本不显示docker

1 个答案:

答案 0 :(得分:1)

  

如何确保已确认docker正常退出?

不是通过查看docker container ls -al输出来完成的,它显示为已停止的容器。

但是通过查看:

  • logs of a stopped container,对于一条应用程序消息,说明停止是正常的(因此,更多地依赖于容器化应用程序,而更少依赖Docker本身)。
  • 其退出状态代码:docker inspect -f '{{.State.ExitCode}}' <container SHA>

为此,请参见Gracefully Stopping Docker Containers的“ Brian DeHamer”,他提醒我们,当您使用docker stop或docker kill发出容器信号时,该信号仅发送给以PID运行的容器进程1。

另请参阅Life and death of a container中的“ Luis Herrera Benítez”,他指出了“ docker inspect --format='{{.State.Health.Status}}' <containerName>”的存在:如果不健康,则可能随后的停站可能并不优雅。 / p>