docker 假死 僵尸状态

某日在调试superset docker容器里面的一个程序后,容器突然假死

docker ps 显示容器状态正常,但是对外服务已经不可用
docker stats 没有反应,这个有点奇怪单个容器也能影响全部?
docker stop CONTAINER_ID 也没有任何反应
docker restart CONTAINER_ID 也没有任何反应
docker exec -it --user root CONTAINER_ID /bin/bash 也没有任何反应

求助朋友后,朋友说是不是僵尸进程
然后用top命令查看,发现有 zombie 3个进程

linux 进程状态
Linux Process Status:
R (task_running) : 可执行状态
S (task_interruptible): 可中断的睡眠状态
D (task_uninterruptible): 不可中断的睡眠状态
T (task_stopped or task_traced): 暂停状态或跟踪状态
Z (task_dead - exit_zombie): 退出状态,进程成为僵尸进程
X (task_dead - exit_dead): 退出状态,进程即将被销毁

继续使用命令查看具体信息

ps -ef | grep "defunct" 

图片描述
跟进PPID查看父进程发现是刚好是对应CONTAINER_ID的进程

ps -ef | grep 82248 

图片描述

最后kill -9 82248 后 zombie 也变成0

一切恢复正常

参考文章
https://www.oschina.net/trans...
https://blog.csdn.net/qq_3959...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值