背景
Dockerのゴミがたまっていた
Dockerのimageとは
docker compose build
などで作られるcontainerを作るときの設計図
imageの削除はcontainerを止めるのとは別の作業です
imageの削除
全体の流れ
イメージのリストを表示して、古いやつをdocker rmi
で消す
1. 動いているcontainerがないか確認しよう
docker container ls
を実行する
結果例
$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
00092249572f AAA-core "/opt/nvidia/nvidia_…" 13 days ago Up 5 days AAA-core-1
もし今使っていないcontainerがあれば先にdocker compose stop <CONTAINER ID>
で止めるか、docker compose down <CONTAINER ID>
で消しましょう
2. imageを見てみよう
docker images
を実行してイメージのリストを表示する
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
gpu-hina-graduation-core latest fe5d083f8783 3 weeks ago 9.56GB
<none> <none> d24265650b3c 3 weeks ago 9.56GB
ubuntu latest 3db8720ecbf5 5 weeks ago 77.9MB
gpu-core latest 5a2107c66f19 7 weeks ago 4.96GB
hello-world latest 9c7a54a9a43c 10 months ago 13.3kB
3. いらないimageの削除
sudo docker rmi IMAGE ID
を実行する
特に<none>
は既に同じものが作られていてゴミになっている可能性が高いので消そう!
SIZEがピッタリ一致しているものは同じものである可能性が高いよ
もし、コンフリクトしたり、使われていますというエラーが出た場合には無理して消さない方がよいかもです
Error response from daemon: conflict: unable to delete XXXXXXXX (must be forced) - image is being used by stopped container XXXXXXXX
終わり
ゴミが消せて平和に