おれさまラボ

実際に手を動かして理解を深めるブログ。

Dockerを試す - 削除編

Dockerの削除

Dockerは、その仕組み上、ベースイメージの差分のみが保存されていきますので、それほどリソースにインパクトは与えませんが、こういうのは基本的にいらなくなったその場で消しておかないと後で「なんだこれ?」となるだけなので、消してしまいましょう。

更新イメージの削除

イメージ名:タグで指定して削除します。常に「-f」つけたほうがいい気がします。

[bargee@barge home]$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              test_20161031       3e6feca4a9f6        21 minutes ago      196.7 MB
centos              latest              980e0e4c79ec        7 weeks ago         196.7 MB
[bargee@barge home]$ docker rmi centos:test_20161031
Failed to remove image (centos:test_20161031): Error response from daemon: conflict: unable to remove repository reference "centos:test_20161031" (must force) - container 5b571f829f61 is using its referenced image 3e6feca4a9f6
[bargee@barge home]$ docker rmi -f centos:test_20161031
Untagged: centos:test_20161031
Deleted: sha256:3e6feca4a9f623bd051f9668fd9088bb55a9687a9488068b1182fbea569ec0fc
[bargee@barge home]$
[bargee@barge home]$
[bargee@barge home]$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              980e0e4c79ec        7 weeks ago         196.7 MB

イメージの削除

更新イメージのときと同じです。イメージ名の指定だけでOKです。

[bargee@barge home]$ docker rmi -f centos
Untagged: centos:latest
Deleted: sha256:980e0e4c79ec933406e467a296ce3b86685e6b42eed2f873745e6a91d718e37a
[bargee@barge home]$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

コンテナの削除

イメージを消しても、コンテナは残っています。

[bargee@barge home]$ docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                         PORTS               NAMES
62510b166471        980e0e4c79ec        "/bin/bash"              24 minutes ago      Exited (0) 20 minutes ago                          high_bhabha
5b571f829f61        3e6feca4a9f6        "/bin/bash"              25 minutes ago      Exited (0) 24 minutes ago                          sad_sinoussi
d1dfc85771f1        980e0e4c79ec        "/bin/bash"              27 minutes ago      Exited (0) 26 minutes ago                          hopeful_lalande
2994b60bb548        980e0e4c79ec        "/bin/bash"              33 minutes ago      Exited (0) 29 minutes ago                          evil_yonath
ea7c7e9518fe        980e0e4c79ec        "/bin/bash"              36 minutes ago      Exited (0) 33 minutes ago                          focused_noether
91cccc52fcef        e43d811ce2f4        "nginx -g 'daemon off"   About an hour ago   Exited (0) About an hour ago                       nauseous_hamilton
8a7bb38d0b27        e43d811ce2f4        "nginx -g 'daemon off"   About an hour ago   Exited (0) About an hour ago                       clever_wilson
11c5a8733d33        e43d811ce2f4        "nginx -g 'daemon off"   About an hour ago   Exited (0) About an hour ago                       ecstatic_carson
43d42fe26085        980e0e4c79ec        "/bin/bash"              About an hour ago   Exited (0) About an hour ago                       distracted_yalow

下記コマンドで削除します。

[bargee@barge home]$ docker rm `docker ps -a -q`
62510b166471
5b571f829f61
d1dfc85771f1
2994b60bb548
ea7c7e9518fe
91cccc52fcef
8a7bb38d0b27
11c5a8733d33
43d42fe26085
[bargee@barge home]$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

まとめ

概念がつかめれば勝ち。