Předpoklad: Přístavní dělník
v Přístavní dělník , pokud jsme opustili kontejner bez jeho zastavení, musíme je zastavit ručně, protože se nezastavil při výstupu. Podobně u obrázků je musíme smazat odshora dolů, protože některé kontejnery nebo obrázky mohou být závislé na základních obrázcích, základní obrázek si můžeme kdykoli stáhnout na. Je tedy dobré odstranit nechtěné nebo visící obrázky z aktuálního počítače.
Jak odstranit obrázky v Dockeru?
Odebrat obrázek
Pro smazání obrázku podle ImageId/Name můžeme použít následující příkaz. Chcete-li se dozvědět více o tom, jak vytvořit bitovou kopii dockeru pomocí Dockerfile, podívejte se na Concept of Dockerfile.
rozdíl mezi lvem a tygrem
docker rmi>
Vynutit odstranění obrázku
Chcete-li vynutit odstranění ukotvitelných obrázků podle ImageID/Name, můžeme použít následující příkaz.
docker rmi -f>
Poznámka: Nemůžeme odstranit obrázky násilím nebo normálně, když kontejner běží.
Visící obrázky
Visící obrázky jsou ty, které se nemapují ani k úložišti, ani ke značce. Použitý příkaz je odstranit visící obrázky. Chcete-li se dozvědět více o tom, jak označovat obrázky Docker, přejděte na Značky obrázků Docker .
docker image prune>
Odstranění všech obrázků
Můžeme odstranit všechny obrázky v docker-machine, abychom odstranili nežádoucí nepořádek a prostor v systému. Každopádně můžeme načíst nejnovější verzi nebo konkrétní verzi obrázku z registru dockerů nebo z mezipaměti.
docker rmi $(docker images -q)>

Jak odstranit kontejnery v Dockeru
Před smazáním kontejnerů musíme kontejner nejprve zastavit, k tomu použijeme příkaz.
síťový operační systém
docker stop>
Rozdíl mezi Docker Stop a Docker Kill
Docker stop nejprve vyšle signál SIGTERM, než proces ukončí signálem SIGKILL a obdobím odkladu. Když Docker kill odešle SIGKILL, okamžitě ukončí proces.
- Zastavit všechny spuštěné kontejnery: Aby se zastavily nádoby, které nevystoupily. K tomu může dojít, když příkaz použitý v obrazu Dockeru zůstane spuštěný. Příkaz by měl být ukončen a to zase zastaví kontejner. Chcete-li zastavit kontejner, když jste kontejner neopustili zastavením příkazu, musíte spustit následující příkaz.
docker stop $(docker ps -aq)>
- Smazat kontejner: Pokud je kontejner zastaven, můžeme použít následující příkaz k odstranění kontejneru.
docker rm>
- Vynutit odstranění kontejneru: Pomocí níže uvedeného příkazu můžeme vynutit odstranění kontejnerů, když jsou spuštěny, aniž bychom je zastavili.
docker rm -f>

Odstraňte všechny kontejnery
Abychom odstranili všechny kontejnery z dokovacího stroje, musíme získat ID všech kontejnerů. Pomocí příkazu můžeme jednoduše získat ID kontejnerů docker ps -aq , pak pomocí příkazu docker rm můžeme odstranit všechny kontejnery v docker-machine.
docker rm $(docker ps -aq)>

Odstraňte všechny zastavené kontejnery
Chcete-li odstranit všechny kontejnery, které jsou zastaveny/opuštěny, můžeme použít filtry v argumentu příkazu ps. Nemůžeme přímo odstranit kontejner, pokud není zastaven. Kontejnery, které nejsou ukončeny nebo jsou spuštěny, můžeme zastavit použitím argumentu -f k příkazu ps v dockeru, volba -f nebo –filter převezme filtr jako status=ukončeno nebo stav=spuštěno nebo název a tak dále. Můžeme odfiltrovat a zastavit konkrétní kontejnery podle požadavku.
docker rm $(docker ps -aq --filter status='exited')>
Po odfiltrování kontejneru, který běží, můžeme použít příkaz stop k zastavení těchto kontejnerů pomocí -q, aby se umlčela číselná ID spojená s těmito kontejnery.
docker stop $(docker ps --filter status=running -q)>
Tím se zastaví všechny kontejnery, a tak nyní můžeme kontejnery vyjmout z dokovacího stroje. Můžeme dokonce filtrovat kontejnery, které jsou zde zastaveny, abychom odstranili pouze ty, jejichž stav je opuštěn.
docker rm $(docker ps --filter status=exited -q)>

- Níže uvedený příkaz odstranil všechny kontejnery, které jsou ve stávajícím stavu. To znamená, že se kontejnery zastavily.
docker container prune>
