本文于 2026-06-22 13:36 更新,部分内容具有时效性,如有失效,请留言
Autodl中某个容器无法启动、无法停止,一直卡住不动~
主要是因为之前用的NFS共享目录,但是偶尔该目录会无法连接,导致容器无法启动,修复NFS之后,有时候卡住依然存在,此时应该是有些进程僵住了,除了重启服务器之外,还可以强制终止该进程。按照下面的顺序依次运行即可:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
# 1. 先发送优雅终止信号(SIGTERM) sudo pkill -15 dockerd sleep 2 # 2. 若进程未退出,强制杀死 sudo pkill -9 dockerd # 3. 同步清理底层 containerd 和 shim 残留进程 sudo pkill -15 containerd sleep 2 && sudo pkill -9 containerd sudo pkill -9 docker-containerd-shim # 4. 重新启动 Docker 服务 sudo systemctl start docker # 5. 验证是否恢复 sudo docker ps |
如果重启后很快又卡住,通常是某个容器进入不可中断睡眠(
D 状态),docker ps 遍历到该容器时就会阻塞。查看进程状态,定位 STAT 列为 D 的容器进程:|
1 |
ps aux | grep -v grep | grep docker |
也可绕过
dockerd,用 containerd 原生命令查看任务状态:|
1 |
sudo ctr -n moby tasks list |
找到异常容器后,强制杀死其主进程再清理:
|
1 |
sudo kill -9 <容器主进程PID> |
D 状态进程本质是内核态 IO 阻塞,通常由磁盘故障、挂载卷异常引起,单纯杀进程可能无效,严重时需要重启宿主机。
最后,可以通过查看日志,确定具体的问题所在。
|
1 |
sudo journalctl -u docker -n 50 --no-pager |




最新评论
同样
站长您好,亚马逊云咨询推广资源,望建立联系,可邮件,谢谢。
换友情链接吗?
看你的站做的挺不错的
恭喜!!太强了,硕博连读啊
雁过留毛,人过留名。
看不懂但大受震撼
每天都在战争,希望2026和平.