Làm thế nào tôi có thể loại bỏ tất cả các hình ảnh docker của tôi?


8

Đôi khi tôi chỉ muốn xóa tất cả mọi thứ ra khỏi docker, và bắt đầu với một bảng xếp hạng sạch sẽ. Có cách nào có hệ thống để chỉ xóa tất cả các thùng chứa & hình ảnh Docker của tôi không?

Hộp đựng

$ docker ps -a | head
CONTAINER ID        IMAGE                COMMAND                CREATED             STATUS                     PORTS               NAMES
7b055e9e5f1f        fedora:latest        /bin/sh                6 days ago          Exited (0) 6 days ago                          ecstatic_colden        
40da968258eb        fedora:latest        /bin/sh                6 days ago          Exited (127) 6 days ago                        naughty_thompson       
5be4581afad6        fedora:latest        /bin/bash              6 days ago          Exited (0) 6 days ago                          kickass_wright         
4d6c33d4be6d        fedora:latest        /bin/bash              6 days ago          Exited (0) 6 days ago                          furious_fermat         
db7a29bdbc2d        fedora:latest        /bin/bash              6 days ago          Exited (0) 6 days ago                          mad_hawking            
e6b7365690ce        fedora:latest        /bin/bash              6 days ago          Exited (0) 6 days ago                          trusting_ardinghelli   
15655c21fcd3        8018e08e6a58         /bin/sh -c 'apt-get    3 weeks ago         Exited (100) 3 weeks ago                       drunk_bardeen          
607547aabbca        f02ed0c206d5         /bin/sh -c 'apt-get    3 weeks ago         Exited (100) 3 weeks ago                       cocky_franklin         
f031f28bd29a        f02ed0c206d5         /bin/sh -c 'apt-get    3 weeks ago         Exited (100) 3 weeks ago                       stoic_mcclintock      

Hình ảnh

$ docker images -a | head
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
docker              master              266a5746d179        2 weeks ago         1.528 GB
<none>              <none>              c1f6a4b1345c        3 weeks ago         1.526 GB
<none>              <none>              6558c36ecb3f        3 weeks ago         1.526 GB
<none>              <none>              b1b7c7a6b6a7        3 weeks ago         1.24 GB
<none>              <none>              0bf9d6bf97e9        3 weeks ago         1.182 GB
<none>              <none>              48c444f1d2e7        3 weeks ago         1.182 GB
<none>              <none>              5c5c172a0038        3 weeks ago         1.182 GB
<none>              <none>              de5e09bb86c1        3 weeks ago         1.182 GB
<none>              <none>              785aaf265f18        3 weeks ago         1.182 GB

Câu trả lời:


9

Cách đơn giản nhất để làm điều này là sử dụng làm 3 bước sau:

  1. dừng tất cả các container
  2. loại bỏ tất cả các container
  3. xóa tất cả các hình ảnh

Để đạt được điều này, bạn có thể sử dụng các khả năng docker psdocker imageslệnh để trả về cho bạn một danh sách ID thông qua đó -qhoặc --quietchuyển đổi. Điều này được loại bỏ tất cả các hành trình mà cả hai lệnh này thường trả về và chỉ cung cấp cho bạn một danh sách đẹp, như vậy:

Đầu ra mặc định
$ docker ps -a
CONTAINER ID        IMAGE                COMMAND                CREATED             STATUS                     PORTS               NAMES
7b055e9e5f1f        fedora:latest        /bin/sh                6 days ago          Exited (0) 6 days ago                          ecstatic_colden        
40da968258eb        fedora:latest        /bin/sh                6 days ago          Exited (127) 6 days ago                        naughty_thompson      
Đầu ra yên tĩnh
$ docker ps -aq
7b055e9e5f1f
40da968258eb
5be4581afad6
4d6c33d4be6d

LƯU Ý: Cả hai docker imagesdocker pscũng sử dụng -ahoặc --allchuyển đổi hiển thị cho bạn tất cả các ID.

Bạn có thể sử dụng đầu ra này để xây dựng các lệnh Docker sử dụng đầu ra từ các lệnh Docker khác như vậy:

$ docker rm $(docker ps -qa)

Dọn dẹp nhà cửa

Vì vậy, để hoàn thành nhiệm vụ của bạn là xóa mọi thứ bạn sử dụng các lệnh sau:

$ docker stop $(docker ps -qa)
$ docker rm $(docker ps -qa)
$ docker rmi $(docker images -qa)
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.