You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker Desktop运行一段时间后自动清空全部容器问题求助

问题分析与解决建议

核心问题定位

从提供的日志来看,Docker Desktop的后台核心进程(如dockerd、containerd或Desktop管理进程)出现崩溃或无响应,导致容器列表丢失、重启流程卡死。常见触发因素包括:

  • Docker Desktop虚拟机资源耗尽
  • containerd进程异常退出
  • Ubuntu系统cgroup配置冲突
  • Docker Desktop 4.17.0版本的已知稳定性bug

具体排查与修复步骤

1. 调整Docker Desktop资源分配

  • 打开Docker Desktop设置 → Resources,将内存分配提升至4GB以上,CPU核心数设置为4核及以上(16个运行中容器需要足够资源支撑)
  • 开启Swap分配,设置为2GB以上,避免内存不足引发进程崩溃

2. 修复containerd进程异常

  • 实时监控containerd状态:
    sudo systemctl status containerd
    
  • 若进程频繁崩溃,执行以下命令重置:
    sudo systemctl daemon-reload
    sudo systemctl restart containerd
    
  • 问题持续时,降级到稳定版containerd:
    sudo apt remove containerd.io
    sudo apt install containerd.io=1.6.24-1
    

3. 关闭Docker Desktop实验特性与自动更新

  • 进入Docker Desktop设置 → Software Updates,关闭自动更新开关
  • 进入Experimental features,禁用所有实验性选项(部分4.17.0版本的containerd镜像存储特性存在稳定性问题)

4. 修复Ubuntu系统cgroup配置

  • 编辑GRUB配置文件:
    sudo nano /etc/default/grub
    
  • 将GRUB_CMDLINE_LINUX=""修改为:
    GRUB_CMDLINE_LINUX="systemd.unified_cgroup_hierarchy=0"
    
  • 更新GRUB并重启系统:
    sudo update-grub
    sudo reboot
    

5. 更换Docker Desktop版本

  • 4.17.0版本在Ubuntu 22.04环境下存在已知稳定性问题,建议降级到4.16.2或升级至最新稳定版:
    • 卸载当前版本:
      sudo apt remove docker-desktop
      rm -rf ~/.docker/desktop
      sudo rm /usr/local/bin/com.docker.cli
      
    • 前往Docker官网下载对应Ubuntu版本的稳定版安装包完成重装

6. 启用日志持久化以便后续排查

  • 创建日志持久化目录:
    mkdir -p ~/.docker/desktop/logs
    
  • 实时监控Docker Desktop后台日志:
    journalctl -u docker-desktop -f
    

内容的提问来源于stack exchange,提问作者Sai Ellis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 07:42:53