> docker exec front df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
overlay 3907584 3907459 125 100% /
# skip
osxfs 9223372036854775807 3103606 9223372036851672201 1% /root/dev
/dev/sda1 3907584 3907459 125 100% /etc/hosts
# skip
TL;DR;
- Inodes利用率100%になるとコンテナの立ち上げができなくなる
- が一番効果あった
docker volume rm `docker volume ls -q -f dangling=true`
今回の no space left on device
の原因
- 初回
docker-compose up
時に遭遇 - 原因がディスク容量不足ではない
- 仮に容量不足なら
docker.app
の設定を変更するだけなので話が早い
- 仮に容量不足なら
- コンテナの中にINODESを食い尽くしているファイルは特に無い
- フレッシュなオフィシャルイメージでコンテナ作る時点でInode使用率100%になっていたケース
- そもそも削れるファイルが無いケース
volume削除
一番効果あった。自分の場合は30%以上減らせた
# activeでないvolumesを確認する
docker system df
# dangling volumeのリストを確認
docker volume ls -q -f dangling=true
# 参照されてないvolumesを削除
docker volume rm `docker volume ls -q -f dangling=true`
コンテナ削除
若干効果あった。自分の場合は利用率を10%弱減らせた
docker rm xxxx使ってないコンテナxxxxx
イメージ削除
わずかに効果あり。1-2%削減
docker system df
でactiveでないイメージが相当ある場合は試してもよいかもしれない
# danglingイメージや、<none> 表示になってるイメージを削除
docker rmi xxxx使ってないイメージxxxxx