2017-03-07 14 views
0

私は/ var/lib/docker/aufsフォルダに多くの領域(パーティションがいっぱい)があります。Dockerがクリーン操作で領域を解放しない

docker volume rm $(docker volume ls -qf dangling=true) 

駆除画像:

docker rmi $(docker images --filter "dangling=true" -q --no-trunc) 

しかし/var/lib/docker/aufsフォルダに影響はありません

は、私は私のボリュームを掃除しました。

アイデア? ありがとう

答えて

2

docker volume ls -qf dangling=trueは、現在コンテナに割り当てられていないボリュームをリストします。ボリュームがまだ使用されている可能性があります。したがって、このコマンドですべてのボリュームを削除するわけではありません。私は個人的には、現在使用されていないボリュームを削除する可能性があるので、後でコンテナにマウントする重要なデータがあるので、このコマンドでクリーンアップを行うのは避けてください。

docker images --filter "dangling=true" -q --no-truncには、タグ付けされていない画像が一覧表示されます。この可能性が最も高い原因は、すでにローカルマシン上にあった古いイメージの新しいバージョンを取得または構築することです。あなたが引っ張った、または構築したすべてのイメージはクリーンアップされず、まだタグ付けされていますが、使用しないでください。

これらのコマンドはいずれも、停止して不要になったコンテナをクリーンアップしません。そのためには、実行中でないコンテナを確認するにはdocker ps -af status=exitedを参照し、docker rmで削除する必要があります。 1.13リリースでは

docker rm $(docker ps -aqf status=exited) 

は、あなたが実行できるようになりました:スクリプト、それは次のようになります

docker system prune 

クリーンアップすべては、またはあなたのような、より具体的でクリーンな特定の部分することができますどの:

docker container prune 
docker image prune 
docker volume prune 

docker image pruneコマンドでは、使用していないすべてのイメージをぶら下げたイメージではなく、すべてプルーニングすることもできます(-a)。

関連する問題