参考: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