5.1 Komenda docker images
Jeśli masz już zapisane obrazy Dockera na swoim systemie, są dostępne specjalne komendy do zarządzania nimi. Przede wszystkim chodzi o docker images
i docker rmi
. W tym wykładzie szczegółowo omówimy, jak używać tych komend do efektywnego zarządzania obrazami Dockera.
Komenda docker images
wyświetla listę obrazów zapisanych lokalnie na twoim systemie. Pokazuje takie dane, jak nazwa repozytorium, tag, identyfikator obrazu, data utworzenia i rozmiar. Te informacje pozwalają szybko ocenić, które obrazy są dostępne i ile zajmują miejsca.
Składnia:
docker images [OPTIONS] [REPOSITORY[:TAG]]
Gdzie:
-
OPTIONS
: dodatkowe parametry do filtrowania i formatowania wyniku. -
[REPOSITORY[:TAG]]
: (opcjonalne) filtr na podstawie nazwy repozytorium i/lub tagu.
Przykład podstawowego użycia
Ten przykład wyświetla listę wszystkich obrazów zapisanych lokalnie.
docker images
Przykład wyniku komendy docker images
:
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 5a7e5b1a3b8c 2 dni temu 133MB
ubuntu 20.04 ba6acccedd29 3 tygodnie temu 72.9MB
myapp 1.0 d1e5e2ff5ff2 1 miesiąc temu 89.5MB
Opis kolumn:
- REPOSITORY: nazwa repozytorium, do którego należy obraz.
- TAG: tag wskazujący wersję obrazu.
- IMAGE ID: unikalny identyfikator obrazu.
- CREATED: czas, który upłynął od utworzenia obrazu.
- SIZE: rozmiar obrazu w pamięci.
5.2 Filtrowanie obrazów
Filtrowanie obrazów pozwala zawęzić wyniki komendy docker images
, aby zobaczyć tylko te obrazy, które pasują do twoich kryteriów. To przydatne, jeśli masz na swoim systemie dużo obrazów i musisz szybko znaleźć konkretny obraz po nazwie repozytorium, tagu lub innych parametrach.
1. Filtr według repozytorium
docker images nginx
Ten przykład wyświetli tylko obrazy z repozytorium nginx
.
2. Filtr według tagu
docker images ubuntu:20.04
Ten przykład wyświetli obraz ubuntu
z tagiem 20.04
.
3. Użycie parametru -a (all)
Domyślnie komenda docker images
pokazuje tylko najnowsze wersje obrazów. Aby wyświetlić wszystkie obrazy, w tym warstwy pośrednie, użyj opcji -a
.
docker images -a
4. Formatowanie wyników
Aby uprościć czytanie lub integrację z innymi narzędziami, możesz dostosować format wyników za pomocą opcji --format
. Jest to szczególnie przydatne w skryptach i podczas automatyzacji zadań.
docker images --format "{{.Repository}}:{{.Tag}} {{.ID}}"
5.3 Komenda docker rmi
Komenda docker rmi
jest używana do usuwania jednego lub więcej obrazów Docker. Jest to przydatne, aby zwolnić miejsce na dysku i utrzymać porządek w systemie, zwłaszcza jeśli obrazy nie są już używane.
Składnia:
docker rmi [OPTIONS] IMAGE [IMAGE...]
Gdzie:
- OPTIONS: dodatkowe parametry do zarządzania procesem usuwania.
- IMAGE: nazwa, tag lub identyfikator obrazu, który chcesz usunąć.
Przykład podstawowego użycia
Ten przykład usuwa obraz o nazwie nginx
.
docker rmi nginx
Usunięcie obrazu według identyfikatora
Ten przykład usuwa obraz o identyfikatorze 5a7e5b1a3b8c
.
docker rmi 5a7e5b1a3b8c
Wymuszone usuwanie
Jeśli obraz jest używany przez kontener lub zablokowany, standardowe usunięcie może być niemożliwe. Aby wymusić usunięcie, użyj opcji -f (force)
.
docker rmi -f myapp:1.0
Usunięcie kilku obrazów
Aby usunąć kilka obrazów jednocześnie, podaj je rozdzielając spacją.
docker rmi nginx ubuntu:20.04 myapp:1.0
5.4 Przykłady praktyczne
Przykład 1: Wyświetlenie wszystkich obrazów
Aby uzyskać pełną listę wszystkich obrazów przechowywanych na lokalnej maszynie, wykonaj polecenie:
docker images
To polecenie wyświetli tabelę z nazwami repozytoriów, tagami, identyfikatorami obrazów, datami utworzenia i rozmiarami.
Przykład 2: Wyświetlenie obrazów z formatowaniem wyjścia
Aby uzyskać listę obrazów z niestandardowym formatowaniem, na przykład aby wyświetlić tylko nazwę repozytorium i tag:
docker images --format "{{.Repository}}:{{.Tag}}"
Ten przykład pokazuje, jak używać opcji --format
do dostosowywania wyjścia, co jest przydatne podczas pisania skryptów.
Przykład 3: Usunięcie wszystkich nieużywanych obrazów
Jeśli chcesz usunąć wszystkie obrazy, które nie są używane przez kontenery, najpierw uzyskaj ich listę, a następnie wykonaj usunięcie:
docker images -q
docker rmi $(docker images -q)
Polecenie docker images -q
wyświetla tylko identyfikatory wszystkich obrazów przechowywanych lokalnie, które są następnie przekazywane do docker rmi
w celu usunięcia.
Przykład 4: Usunięcie dangling images
Dangling images
to obrazy bez tagów, które pozostają po aktualizacjach obrazów lub nieudanych kompilacjach. Aby je usunąć, użyj polecenia:
docker rmi $(docker images -f "dangling=true" -q)
Tutaj -f "dangling=true"
filtruje obrazy bez tagów, a -q
wyświetla tylko ich identyfikatory, które są przekazywane do polecenia usuwania.
GO TO FULL VERSION