Docker là một nền tảng giúp đơn giản hóa quy trình phát triển, vận chuyển và chạy ứng dụng trong các môi trường biệt lập được gọi là container. Container đóng gói mọi thứ mà ứng dụng cần để chạy, bao gồm mã, thời gian chạy, thư viện và cài đặt, đảm bảo tính nhất quán trên các môi trường khác nhau, cho dù là trên máy của nhà phát triển hay trong sản xuất. Docker Image là một gói nhẹ, độc lập và có thể thực thi chứa tất cả các hướng dẫn để tạo một container Docker. Nó bao gồm mã ứng dụng, các phụ thuộc và bất kỳ công cụ hệ thống hoặc thư viện cần thiết nào. Sau khi được xây dựng, Docker Images có thể được chia sẻ, tái sử dụng và triển khai, khiến chúng trở thành thành phần thiết yếu để đảm bảo tính nhất quán và khả năng mở rộng của ứng dụng trên nhiều hệ thống khác nhau.
Docker Images có thể chiếm đáng kể dung lượng đĩa theo thời gian, đặc biệt là nếu bạn thường xuyên xây dựng và kéo hình ảnh. Hướng dẫn này sẽ hướng dẫn bạn quy trình xóa hình ảnh Docker không còn cần thiết nữa.
Lệnh:
Giải thích: Lệnh này sẽ hiển thị danh sách tất cả hình ảnh, hiển thị kho lưu trữ, thẻ, ID hình ảnh, ngày tạo và kích thước.
Gợi ý:
Lệnh:
Hoặc, nếu bạn thích sử dụng kho lưu trữ và thẻ:
Giải thích:
hoặc
Lệnh:
Giải thích:
Lệnh:
Giải thích:
Lệnh:
Giải thích:
Docker Images có thể chiếm đáng kể dung lượng đĩa theo thời gian, đặc biệt là nếu bạn thường xuyên xây dựng và kéo hình ảnh. Hướng dẫn này sẽ hướng dẫn bạn quy trình xóa hình ảnh Docker không còn cần thiết nữa.
Bước 1: Liệt kê hình ảnh Docker
Trước khi xóa bất kỳ hình ảnh nào, trước tiên bạn nên liệt kê tất cả các hình ảnh hiện có trên hệ thống của mình.Lệnh:
Mã:
docker images
Bước 2: Xác định hình ảnh cần xóa
Từ danh sách được tạo bởi lệnh trước đó, xác định hình ảnh bạn muốn xóa. Bạn có thể chọn hình ảnh theoIMAGE ID
, REPOSITORY
hoặc TAG
.Gợi ý:
- IMAGE ID là mã định danh duy nhất cho mỗi hình ảnh, đây là tùy chọn an toàn nhất để sử dụng.
-
REPOSITORY
vàTAG
tương ứng với tên và phiên bản của hình ảnh.
Bước 3: Xóa hình ảnh Docker
Để xóa một hình ảnh Docker cụ thể, hãy sử dụng lệnhdocker rmi
theo sau là IMAGE ID
, REPOSITORY:TAG
, hoặc IMAGE NAME
.Lệnh:
Mã:
docker rmi
Mã:
docker rmi :
- Lệnh này sẽ xóa hình ảnh đã chỉ định.
- Nếu hình ảnh đang được sử dụng bởi một vùng chứa đang chạy, Docker sẽ ngăn bạn xóa hình ảnh đó để tránh gián đoạn.
Mã:
docker rmi 7d9495d03763
Mã:
docker rmi ubuntu:latest
Bước 4: Buộc xóa hình ảnh (Tùy chọn)
Nếu hình ảnh có nhiều thẻ hoặc được sử dụng bởi một vùng chứa đã dừng, Docker có thể không xóa hình ảnh đó ngay lập tức. Trong những trường hợp như vậy, bạn có thể xóa hình ảnh một cách cưỡng bức.Lệnh:
Mã:
docker rmi -f
-
-f
hoặc Cờ--force
buộc Docker xóa hình ảnh ngay cả khi hình ảnh được gắn thẻ nhiều lần hoặc được liên kết với các vùng chứa đã dừng.
- Sử dụng lệnh này một cách thận trọng vì nó có thể dẫn đến hậu quả không mong muốn nếu hình ảnh vẫn đang được sử dụng.
Bước 5: Xóa tất cả hình ảnh không sử dụng (Tùy chọn)
Nếu bạn muốn dọn sạch tất cả hình ảnh không sử dụng (hình ảnh treo), bạn có thể sử dụngdocker image prune
lệnh.Lệnh:
Mã:
docker image prune
- Lệnh này xóa tất cả các hình ảnh treo—các hình ảnh không được gắn thẻ và không được bất kỳ vùng chứa nào tham chiếu.
- Docker sẽ nhắc bạn xác nhận trước khi tiếp tục.
Mã:
docker image prune -a
Bước 6: Xác minh việc xóa
Sau khi xóa hình ảnh, bạn có thể xác minh rằng chúng đã bị xóa bằng cách liệt kê các hình ảnh một lần nữa.Lệnh:
Mã:
docker images
- Nếu hình ảnh đã được xóa thành công, nó sẽ không còn xuất hiện trong danh sách nữa.
Mẹo bổ sung
-
Kiểm tra dung lượng đĩa: Sau khi xóa hình ảnh, bạn nên kiểm tra dung lượng đĩa để đảm bảo rằng các mục xóa đã giải phóng dung lượng. Bạn có thể sử dụng lệnhdocker system df
cho mục đích này.
-
Xóa các mạng và ổ đĩa không sử dụng: Đôi khi, các mạng và ổ đĩa không sử dụng cũng có thể chiếm dụng dung lượng đĩa. Hãy cân nhắc chạydocker volume prune
vàdocker network prune
để dọn dẹp những thứ này.
-
Hãy thận trọng: Luôn kiểm tra kỹ trước khi xóa hình ảnh, đặc biệt là trong môi trường sản xuất, vì việc xóa hình ảnh đang sử dụng có thể làm gián đoạn các dịch vụ.