Pokud potřebujete komplexní platformu otevřených zdrojů pro vytvoření nezávislosti mezi aplikacemi a infrastrukturou, Docker je vaše nejbezpečnější sázka. Pokud jste měli možnost ji používat, již víte, jak je schopná a snadno použitelná
Velké množství cloudových a IT společností to považuje za nesmírně užitečné a jeho popularita si určitě zaslouží.
Přesto to neznamená, že je perfektní. Důkaz lze vidět v omezeních, která přicházejí s odstraňováním obrázků, svazků, kontejnerů a sítí. Přestože jsou tyto příkazy k dispozici, nejsou tak komplexní, jak by si uživatelé mohli přát.
Zde uvidíte hlavní problémy, se kterými se uživatelé setkávají, a jejich řešení. Naučíte se, jak obrázky a kontejnery snadno odstraňovat.
Problém
Kontejnerová technologie poskytuje způsob vizualizace operačních systémů. Umožňuje aplikaci, aby byla zabalena se vším, co potřebuje k jejímu spuštění, což jí umožňuje jednat nezávisle na OS.
Obrázky kontejneru jsou samostatné spustitelné balíčky aplikací, které obsahují vše, co aplikace potřebuje, aby správně fungovala. Runtime, kód, konfigurace a systémové nástroje a knihovny jsou obsaženy v každém obrázku.
Při používání aplikace Docker se tyto obrázky hromadí. Postupem času se hromadí velké množství nepoužitých obrázků, objemů dat a kontejnerů, což vytváří přeplněné prostředí Docker. V takovém případě je nutné aktualizovat prostředí, aby platforma fungovala tak, jak má.
K tomu může dojít několika příkazy, takže se podívejme na hlavní způsoby odstraňování dešifrování prostředí Docker.
Odstranění obrázků Docker
Než budete moci odstranit nepotřebné obrázky, musíte je odlišit od těch užitečných. To lze snadno provést uvedením všech obrázků, které váš systém obsahuje, pomocí příkazu pro správu obrázků.
Vypadá to takto:
$ docker image #list the most recently created images
Nebo
$ docker image -a #list all images
Druhým příkazem uvidíte všechny obrázky ukotvitelného panelu. Jediné, co musíte udělat, je najít tzv. „Visící obrazy“. To jsou všechny obrázky Docker, které neobsahují značku. Bez značky neexistuje spojení s označenými obrázky, což znamená, že již nejsou užitečné.
Můžete odstranit jeden nebo více obrázků pomocí Image ID. Použijte jeden z těchto příkazů:
$ docker rmi d65c4d6a3580 #remove a single image
$ docker rmi 612866ff4869 e19e33310e49 abe0cd4b2ebc #remove multiple images
Výhodnějším řešením je použití příznaku filtru -f k zobrazení všech visících obrázků.
Chcete-li tyto obrázky odstranit a vyčistit místo na disku, použijte jeden z následujících příkazů:
$ docker image prune #interactively remove dangling images
Nebo
$ docker rmi $(docker images -q -f dangling=true)
Všechny obrázky Docker můžete odstranit podobným způsobem. Vypište je pomocí příkazu $ docker images –a a poté je odstraňte pomocí následujícího:
$ (docker rmi $(docker images -a -q)
Další možností je odstranit obrázky, které sledují určitý vzor. Chcete-li je zobrazit, použijte následující příkaz:
$ docker images -a | grep "pattern"
Potom je odstraňte pomocí:
$ docker images -a | grep "pattern" | awk '{print $3}' | xargs docker rmi
Vyjmutí kontejnerů
Další věcí, kterou byste mohli chtít po určité době pracovat s Dockerem, je odstranit jeden nebo více kontejnerů.
Podobně jako při odebrání obrázku je musíte nejprve uvést seznam pomocí následujícího příkazu:
$ docker ps
Nebo
$ docker ps -a
Když najdete kontejnery, které chcete odstranit, použijte k tomu ID.
$ docker rm 0fd99ee0cb61 #remove a single container
$ docker rm 0fd99ee0cb61 0fd99ee0cb61 #remove multiple containers
V případě, že je spuštěn kontejner, který se pokoušíte odstranit, můžete jej zastavit pomocí následujícího příkazu:
$ docker stop 0fd99ee0cb61
$ docker rm -f 0fd99ee0cb61
Nakonec můžete zastavit a odstranit všechny nepotřebné kontejnery pomocí následujících příkazů:
$ docker stop $(docker ps -a -q) #stop all containers
$ docker container prune #interactively remove all stopped containers
Nebo
$ docker rm $(docker ps -qa)
To vám umožní uvolnit cenné místo na disku a začít nový.
Závěrečné slovo
Jak vidíte, odstranění obrázků a kontejnerů Docker není tak skličující, jak to může. Nyní, když tyto příkazy znáte, můžete mít nad svým Dockerem větší kontrolu.
To jsou samozřejmě jen některé z příkazů a můžete použít celou řadu dalších kombinací. Přesto to bude fungovat dobře, takže si je můžete vyzkoušet.
