MacOS 在使用 docker: no space left on device: unknown

MacOS 在使用 docker 的过程中出现以下错误:

sh 复制代码
failed to send write: write /var/lib/desktop-containerd/daemon/io.containerd.content.v1.content/ingest/d8d3a8edbc49a0344e84320ead6a28a14a3b9cba48be7a58acacfef312fb70b5/data: no space left on device: unknown

这个错误非常常见,本质原因就是 Docker(更准确说是 containerd 的内容存储目录)磁盘空间不足。不是你的硬盘满了,而是 Docker Desktop 的虚拟磁盘空间已满。


✅ 1. 最常见原因:Docker Desktop 的虚拟磁盘满了

Mac 上 Docker Desktop 默认会创建一个虚拟磁盘 Docker.raw(几十 GB),所有镜像都存里面。

加载一个大镜像 m3e-large-api(好几 GB)就会爆。

✔ 解决方法:增大 Docker 虚拟磁盘大小

路径:

Docker Desktop → Settings → Resources → Advanced → Disk image size

把 Disk image size 调大一点,比如:

  • 30GB → 改成 80GB
  • 60GB → 改成 120GB

改完后要 Restart Docker。


✅ 2. 删除不用的镜像/容器释放空间(快速见效)

终端执行:

复制代码
docker system df

看看空间占用情况。

然后清理:

sh 复制代码
docker system prune -a

如果你想更狠一点:

sh 复制代码
docker system prune -a --volumes

⚠ 注意:会删除所有不用的镜像、容器、网络和 volume。


✅ 3. 查看 containerd 在 Mac 中的真实空间占用

Mac Docker Desktop 的 containerd 数据目录:

~/Library/Containers/com.docker.docker/Data/vms/0/data/Docker.raw

你可以看下它占了多大:

ls -lh ~/Library/Containers/com.docker.docker/Data/vms/0/data/Docker.raw

如果这个文件已经接近 Docker Desktop 配置的上限,即使硬盘有空间也加载不进去。


✅ 4. 强制清理 containerd 的内容目录(危险,慎用)

你的报错目录:

/var/lib/desktop-containerd/daemon/io.containerd.content.v1.content

如果你确信可以全部清空:

rm -rf /var/lib/desktop-containerd/daemon/io.containerd.content.v1.content/*

⚠ 注意:会导致 containerd 中的内容全部丢失(Docker Desktop 可能需要重启或重置)。


✅ 5. 如果以上都不行:重置 Docker Desktop(杀手锏)

Docker Desktop → Troubleshoot → Reset →

  • "Clean / Purge data" 或者
  • "Reset to factory defaults"

会清掉全部镜像和容器,但能保证干净。


📌 最推荐的解决方案(强烈建议)

你是加载大模型镜像 m3e-large-api(几 GB),99% 是 Docker Desktop 虚拟磁盘不够大。

👉 把 Docker Desktop 的 disk image size 调大到 80GB 或以上,然后重启,再 docker load。


如果你愿意,可以把以下输出贴给我,我帮你判断更准确:

sh 复制代码
docker system df
df -h
ls -lh ~/Library/Containers/com.docker.docker/Data/vms/0/data/Docker.raw
相关推荐
甘晴void2 小时前
我给 Magpie 做了个 macOS 桌宠:106 段动画,请求一多就亮灯
macos·electron·开源·deepseek·桌面宠物·magpie
donecoding3 小时前
Apple 芯片 Mac 的终端为什么还在跑 Intel?从 tmux 查起
macos
是枚小菜鸡儿吖5 小时前
Home Assistant跨品牌智能家居教程:Docker部署、米家接入、vivo桥接与远程访问
docker·容器·智能家居
DevLoom_8 小时前
macOS 27 升级后 Time Capsule 无法备份?AFP 协议废弃后的完整解决方案与备份迁移教程
macos·时间机器·macos27·macos 27备份·macos实用技巧
螺蛳粉 螺蛳粉8 小时前
第 02 篇:镜像分层与 containerd 2.x 实战:SystemdCgroup 与 pause 镜像配置踩坑(底座认知 02)
docker·云原生·容器·kubernetes·etcd·containerd·kube-apiserver
金海星科技8 小时前
船舶交通管理中心的人工智能值守:从“听、说、读、写“看人机协同
人工智能·macos·xcode
wefg18 小时前
【Docker】镜像相关指令
运维·docker·容器
java_logo10 小时前
Docker 部署 DPanel:轻松搭建轻量容器管理平台
运维·docker·容器·podman·容器管理·dpanel·轩辕镜像
死磕音视频10 小时前
Open WebUI 入门:用 Docker 装上本地对话界面并连接 Ollama
docker·ollama·本地大模型·open webui
分布式存储与RustFS10 小时前
CI 老被 Docker Hub 的 429 卡住,自建 Registry 把镜像搬进内网
运维·docker·开源·镜像仓库·对象存储·ci·rustfs