【问题标题】:Not enough space during build构建期间没有足够的空间
【发布时间】:2019-01-21 13:52:23
【问题描述】:

我目前正在尝试使用 python 文件和 require.txt 中的许多额外包创建 docker 映像。

当我运行命令“sudo docker build -t XXX”时。软件包已下载并一一安装,直到收到错误消息: “由于 EnvironmentError 无法安装软件包:[Errno 28] 设备上没有剩余空间”

我已经做了“sudo docker system prune”的原子选项,所有过去的docker镜像都被删除了。

此外,“sudo docker info”显示我有 15 GB 分配给 docker,虽然我不成功的 docker 映像大小为 1 GB,但仍远低于总内存。

此处未提及任何选项:https://unix.stackexchange.com/questions/203168/docker-says-no-space-left-on-device-but-system-has-plenty-of-space 或在这里:Docker error : no space left on device 工作。我可以创建几个约 1GB 的“失败”泊坞窗,总大小超过 20GB,所以这不是我的 VM 硬盘空间不足的问题。 因此,我将不胜感激。

【问题讨论】:

标签: docker


【解决方案1】:

如果您在 Mac 上使用 Docker Desktop,请转到首选项并增加磁盘映像大小。在我的情况下,它显示它已满Disk image size: 59.6 GB (59.6 GB used)

【讨论】:

  • 感谢您提供答案。但是您参考 Docker Desktop 的 Preferences 选项。你也许在Mac上?我在 Windows 上并没有看到(我看到“设置”......但即使在那里,我们也没有选择修改磁盘大小,除非通过配置文件。)我只是建议如果你在Mac,如果您在第一个逗号之前简单地调整答案以添加“on macOS”,这似乎会对未来的读者有所帮助。
【解决方案2】:

Docker 使用的磁盘分区在构建过程中已满。您可以使用df -h 查看分区上的可用空间和已用空间。您可以向该分区添加更多空间,或者需要清理更多文件。

docker system prune 仅删除未使用的数据(悬空图像、未引用卷...)。您可以通过删除不需要的图像来清理更多空间。我建议您查看使用docker image ls 的图像,并使用docker image rm <image> 明确删除不需要的图像。

【讨论】:

  • 得到了同样的错误,尽管data_root 被配置为一个大分区并且在修剪之后。我发现的唯一解释是 docker 在构建时在我的(小)根分区上创建了临时文件。是否可以在配置中更改它?
  • 你刚刚保存了小米电脑! 25 GB 的垃圾图片!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-09-28
  • 1970-01-01
  • 2018-03-09
  • 2020-07-13
  • 2016-05-29
相关资源
最近更新 更多