聊一聊容器暂停退出

Posted dotNET跨平台

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了聊一聊容器暂停退出相关的知识,希望对你有一定的参考价值。

1

背景介绍       

最近在写 docker 相关教程,过程中发现容器暂停退出竟然有 docker kill、docker stop 和 docker pause 三种方式,今天就来分析下三者间的区别。

2

辅助指令       

  • docker top - 查看容器进程

  • docker event - 查看容器相关事件

  • docker stats - 查看容器资源使用率

3

准备工作       

1. 启动容器

先分别启动三个容器:

docker run --name nginx-kill -d nginx
docker run --name nginx-stop -d nginx
docker run --name nginx-pause -d nginx

2. 查看容器进程

docker top nginx-kill
docker top nginx-stop
docker top nginx-pause

3. 查看资源使用

docker stats nginx-kill nginx-stop nginx-pause

4. 打开事件监听

docker events

4

开始分析       

1. docker kill

docker kill nginx-kill
docker top nginx-kill
docker stats nginx-kill
docker ps -a

docker top 指令报错,CPU 和内存使用率为 0,容器状态为 Exited,退出码为 137。

相关事件:

kill -> die

2. docker stop

docker stop nginx-stop
docker top nginx-stop
docker stats nginx-stop
docker ps -a

docker top 指令报错,CPU 和内存使用率为 0,容器状态为 Exited,退出码为 0。

相关事件:

kill -> die -> stop

3. docker pause

docker pause nginx-pause
docker top nginx-pause
docker stats nginx-pause
docker ps -a

docker top 指令正常,CPU 使用率为 0,内存使用率大于 0,容器状态为 Pause。

相关事件:

4

结果分析       

5

参考总结       

以上就是本文希望分享的内容,如果大家有什么问题,欢迎在公众号 - 跬步之巅留言交流。

以上是关于聊一聊容器暂停退出的主要内容,如果未能解决你的问题,请参考以下文章

透过现象看本质——聊一聊docker的硬件资源控制与验证

聊一聊Docker网络通信

不吹不黑!我们来聊一聊云原生和容器技术

聊一聊docker存储驱动

# 聊一聊悟空编辑器 #

聊一聊isinstance与type