参考:https://unix.stackexchange.com/questions/203168/docker-says-no-space-left-on-device-but-system-has-plenty-of-space
如果你是使用rhel/centos/fedora,当你在编一些大的image的话,可能会遇到“no space left on device”这个问题。
发生这个问题的原因是:
在这些系统中,默认,一个image的devicemapper的上限是10G,当编译的包超过这个上限时,你就会遇到这个错误。
解决方案的思路:将上限加大即可。
解决步骤如下:
# 关闭服务
sudo service docker stop
# 如果没有重要文件,则直接删除现有的devicemapper
sudo rm -rf /var/lib/docker
# 好像要删好久哦
# fedora: 重新设置devicemapper的上限
docker daemon --storage-opt dm.basesize=20G
# centos/rhel: 重新设置devicemapper的上限
sudo dockerd-current --storage-opt dm.basesize=20G
# 重新启动服务
sudo service docker start
本文针对在RHEL/CentOS/Fedora系统上编译大型Docker镜像时遇到的“nospaceleftondevice”错误,提供了解决方案。此问题源于默认的DeviceMapper上限为10GB,当编译的包超出限制时出现。文章指导如何通过调整上限来解决该问题。
1万+

被折叠的 条评论
为什么被折叠?



