Docker:错误标志背后的主要原因是啥:0x5001:设备上没有剩余空间

Posted

技术标签:

【中文标题】Docker:错误标志背后的主要原因是啥:0x5001:设备上没有剩余空间【英文标题】:Docker: What is the main reason behind the error flags: 0x5001: no space left on deviceDocker:错误标志背后的主要原因是什么:0x5001:设备上没有剩余空间 【发布时间】:2020-01-20 09:51:54 【问题描述】:

背景:

我在我的 docker 容器中运行一个 java 进程,并使用 jmap 将 histo 转储到容器内 /home/heapdump.txt 的文件中。我从容器中获取此文件以进行进一步处理。

现在,我每隔 5 分钟执行一次。但是,在 20 分钟后,意味着 4 个堆转储,当我尝试获取此文件时,出现以下错误:

"message":"mount/:/var/lib/docker/overlay2/<container_id>/merged/hostroot, flags: 0x5001: no space left on device"

我不明白在这种情况下,设备上没有剩余空间是什么意思。 ????????????

【问题讨论】:

Docker error : no space left on device的可能重复 这似乎是一个非常明确的错误信息;你有什么困惑? @DavideMaze,我知道它很清楚,我无法弄清楚它在说no space left 的设备。 ?????? 【参考方案1】:

你已经完成了 docker 安装。并且您的存储映射到默认 /var。除非您手动分配,否则我相信它会占用更少的空间。

在您的设备上执行 df -kh 并查看映射到 /var 的设备的状态。你会用完空间。

要解决此问题,请找到一个空间充足的磁盘 - 请记住,docker 将使用该磁盘来存储其所有图像和卷数据。并让 docker 使用它。

您需要在 daemon.json 文件中将其配置为如下所示的数据根配置。

“data-root”: “/new/data/root/path”

记得重新加载守护进程并重启 docker 服务。 完成后,您将看到 docker 精美地将其图像和卷数据复制到新目录。

一旦你测试了你就可以清理 var/lib/docker。

希望对你有帮助

【讨论】:

以上是关于Docker:错误标志背后的主要原因是啥:0x5001:设备上没有剩余空间的主要内容,如果未能解决你的问题,请参考以下文章

创建广告时出现代码 200 和子代码 1487194 的 Facebook 错误背后的原因是啥?

2010年德国银行卡问题背后的技术原因是啥?

“use strict”在 JavaScript 中做了啥,背后的原因是啥?

“左值”和“右值”的命名背后的原因是啥?

Subversion 存储库推荐布局背后的原因是啥?

Control.Lens 中的 Market 名称背后的原因是啥?