🎉
Dockerコンテナ、イメージの整理
※本記事は、2021年8月に個人ブログ「ふじやまエッグのブリコルール日誌」に初出したものを、ブログ閉鎖にともない一部加筆・修正のうえ、こちらに転載したものです。
Dockerを使っていると、いつのまにかコンテナやらイメージがたまってきて、パソコンの容量を圧迫したりします。
参考
コンテナをイメージに保存しておこうとも思ったが、コンテナを停止しても残る、ということなので、やらなくていいかなと思う。
コンテナの削除
Dockerイメージとコンテナの削除方法
Remove Docker image
コンテナのステータス
- [Docker入門] Dockerコンテナのステータスを調べてみよう | Skyarch Broadcasting
exited から running に移行するコマンドの違い
docker start と docker run
-
docker runは、コンテナを作成またはダウンロードして実行するコマンド。 -
docker startは、作成済みのコンテナを起動するコマンド。
既にできあがったコンテナに対して docker run を実行すると?
docker run ではイメージを指定するので、既にできあがったコンテナを削除することはない。
別のコンテナが新しく作成されるだけである。
docker run [オプション] イメージ[:タグ|@ダイジェスト値] [コマンド] [引数...]
では、Docker startは、どうすればいい?
以下の形式である。
docker start [オプション] コンテナ [コンテナ...]
Docker startしたが、コンテナ内に入れず、また、docker psの状態もかわらない。どういうこと?

おそらく、containerが起動できる状態になっていない。理由はわからないが。通常は、
docker start コンテナID
で、コンテナが起動。docker ps -a の結果も”Up”になる。
その後、
docker attach コンテナID
で、コンテナの中に入るのである。
docker start でも起動しないコンテナは、削除しようかと思う。
コンテナの削除はどうやるの?
以下でいける。
docker rm コンテナID
しかし、docker attach しても、画面が固まったのですが?
そういうことがあるみたい。Cntl + C で、元に戻るが、コンテナがまた停止してしまうようです。
docker attach ではなく、docker exec の方がいいようです。
docker exec -it コンテナID /bin/bash
Docker attach と exec
では、コンテナの削除ができたので、今度はイメージを整理しよう。
まずは、docker imagesで、イメージの一覧を表示して、そこから、不要なイメージを docker rmi で削除する。
docker rmi [イメージID]

よし、これで少しはすっきりした。
Discussion