Android

A dokkoló tárolók, képek, kötetek és hálózatok eltávolítása

10 Awesome Building Designs and Architectural Wonders

10 Awesome Building Designs and Architectural Wonders

Tartalomjegyzék:

Anonim

A Docker lehetővé teszi az alkalmazások gyors összeállítását, tesztelését és telepítését hordozható, önellátó tárolókként, amelyek gyakorlatilag bárhol futhatnak.

A Docker csak akkor távolítja el a nem használt objektumokat, mint például tárolók, képek, kötetek és hálózatok, kivéve, ha kifejezetten megteszi. A Docker-rel dolgozva könnyen felhalmozhat nagy számú fel nem használt objektumot, amelyek jelentős lemezterületet igényelnek, és elkavarják a Docker-parancsok által létrehozott kimenetet.

Ez az útmutató „csaló lapként” szolgál a Docker felhasználók számára a rendszer szervezésében és a lemezterület felszabadításában a nem használt Docker tárolók, képek, kötetek és hálózatok eltávolításával.

Az összes fel nem használt objektum eltávolítása

A docker system prune eltávolítja az összes leállított tárolót, az összes lógó képet és az összes fel nem használt hálózatot:

docker system prune

A program felszólít arra, hogy folytassa, használja a -f vagy --force jelzőt a figyelmeztetés megkerülésére.

WARNING! This will remove: - all stopped containers - all networks not used by at least one container - all dangling images - all build cache Are you sure you want to continue?

docker system prune --volumes

WARNING! This will remove: - all stopped containers - all networks not used by at least one container - all volumes not used by at least one container - all dangling images - all build cache Are you sure you want to continue? y

A dokkoló konténerek eltávolítása

A dokkoló tárolókat nem távolítják el automatikusan, amikor megállítják őket, kivéve, ha a tárolót a --rm zászlóval --rm .

Távolítson el egy vagy több tartályt

Egy vagy több Docker kép eltávolításához használja a docker container rm parancsot, amelyet az eltávolítandó tárolók azonosítója követ.

Az összes tároló listáját az -a zászló átadásával a docker container ls parancsára kaphatja:

docker container ls -a

A kimenetnek így kell kinéznie:

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES cc3f2ff51cab centos "/bin/bash" 2 months ago Created competent_nightingale cd20b396a061 solita/ubuntu-systemd "/bin/bash -c 'exec …" 2 months ago Exited (137) 2 months ago systemd fb62432cf3c1 ubuntu "/bin/bash" 3 months ago Exited (130) 3 months ago jolly_mirzakhani

Miután megismerte a törölni kívánt tárolók CONTAINER ID docker container rm , adja át a docker container rm parancsnak. Például a fenti kimenetben felsorolt ​​első két tároló eltávolításához futtassa:

docker container rm cc3f2ff51cab cd20b396a061

Error response from daemon: You cannot remove a running container fc983ebf4771d42a8bd0029df061cb74dc12cb174530b2036987575b83442b47. Stop the container before attempting removal or force remove.

Távolítsa el az összes leállított tartályt

Az eltávolítási parancs végrehajtása előtt beszerezheti az összes nem futó (leállított) tároló listáját, amelyeket a következő paranccsal távolítanak el:

docker container ls -a --filter status=exited --filter status=created

Az összes leállított tároló eltávolításához használja a docker container prune parancsot:

docker container prune

A program felszólít arra, hogy folytassa, használja a -f vagy --force jelzőt a figyelmeztetés megkerülésére.

WARNING! This will remove all stopped containers. Are you sure you want to continue? y

Távolítsa el a konténereket szűrőkkel

A docker container prune parancs lehetővé teszi a konténerek eltávolítását a körülmények alapján a --filter .

A cikk írásakor a jelenleg támogatott szűrők until vannak érvényben, until label . Több szűrőt is használhat --filter zászlók használatával.

Például az összes olyan kép eltávolításához, amely több mint 12 órával ezelőtt készült, futtassa:

docker container prune --filter "until=12h"

Állítsa le és vegye le az összes tartályt

A Docker- docker container ls -aq paranccsal a rendszer összes Docker-tárolójának listáját docker container ls -aq .

Az összes futó tároló leállításához használja a docker container stop parancsát, majd az összes tároló-azonosító listáját.

docker container stop $(docker container ls -aq)

Miután az összes tárolót leállították, eltávolíthatja azokat a docker container rm paranccsal, amelyet a konténerek azonosító listája követ.

docker container rm $(docker container ls -aq)

Docker képek eltávolítása

Távolítson el egy vagy több képet

Egy vagy több Docker kép eltávolításához a Docker images docker images ls paranccsal keresse meg az eltávolítani kívánt képek azonosítóját.

docker image ls

A kimenetnek így kell kinéznie:

REPOSITORY TAG IMAGE ID CREATED SIZE centos latest 75835a67d134 7 days ago 200MB ubuntu latest 2a4cca5ac898 2 months ago 111MB linuxize/fedora latest a45d6dca3361 3 months ago 311MB java 8-jre e44d62cf8862 3 months ago 311MB

Miután megtalálta az eltávolítani kívánt képeket, adja át a IMAGE ID a docker image rm parancsnak. Például a fenti kimenetben felsorolt ​​első két kép eltávolításához:

docker image rm 75835a67d134 2a4cca5ac898

Error response from daemon: conflict: unable to remove repository reference "centos" (must force) - container cd20b396a061 is using its referenced image 75835a67d134

Távolítsa el a függőleges képeket

A Docker egy docker image prune szilvaparancsot ad, amely felhasználható az eltekert és a fel nem használt képek eltávolítására.

A lógó kép olyan kép, amely nincs címkézve és amelyet egyetlen tároló sem használ. A függő képek eltávolításához írja be:

docker image prune

A program felszólít arra, hogy folytassa, használja a -f vagy --force jelzőt a figyelmeztetés megkerülésére.

WARNING! This will remove all dangling images. Are you sure you want to continue? y A függő képek eltávolításakor, ha az Ön által készített képeket nem címkézik meg, azokat is eltávolítják.

Távolítsa el az összes fel nem használt képet

Az összes olyan kép eltávolításához, amelyre egyetlen meglévő tároló sem hivatkozik, nemcsak a függő képekre, használja az prune zászló parancsot az -a zászlóval:

docker image prune -a

WARNING! This will remove all images without at least one container associated to them. Are you sure you want to continue? y

Távolítsa el a képeket a szűrők segítségével

A docker image prune parancsával eltávolíthatja a képeket egy bizonyos körülmény alapján a --filter .

A cikk írásakor a jelenleg támogatott szűrők until vannak érvényben, until label . Több szűrőt is használhat --filter zászlók használatával.

Például az összes olyan kép eltávolításához, amely több mint 12 órával ezelőtt készült, futtassa a következőt:

docker image prune -a --filter "until=12h"

A dokkoló kötetek eltávolítása

Távolítson el egy vagy több kötetet

Egy vagy több Docker kötet eltávolításához használja a docker volume ls parancsot az eltávolítandó kötetek azonosítójának megtalálásához.

docker volume ls

A kimenetnek így kell kinéznie:

DRIVER VOLUME NAME local 4e12af8913af888ba67243dec78419bf18adddc3c7a4b2345754b6db64293163 local terano

Miután megtalálta az eltávolítandó kötetek docker volume rm , adja át őket a docker volume rm parancsának. Például a fenti kimenetben felsorolt ​​első kötet eltávolításához futtassa:

docker volume rm 4e12af8913af888ba67243dec78419bf18adddc3c7a4b2345754b6db64293163

Error response from daemon: remove 4e12af8913af888ba67243dec78419bf18adddc3c7a4b2345754b6db64293163: volume is in use -

Távolítsa el az összes fel nem használt kötetet

Az összes fel nem használt kötet eltávolításához használja a docker image prune parancsot:

docker volume prune

A program felszólít arra, hogy folytassa, használja a -f vagy --force jelzőt a figyelmeztetés megkerülésére.

WARNING! This will remove all local volumes not used by at least one container. Are you sure you want to continue?

Docker hálózatok eltávolítása

Távolítson el egy vagy több hálózatot

Egy vagy több Docker hálózat eltávolításához a Docker docker network ls paranccsal keresse meg az eltávolítani kívánt hálózatok azonosítóját.

docker network ls

A kimenetnek így kell kinéznie:

NETWORK ID NAME DRIVER SCOPE 107b8ac977e3 bridge bridge local ab998267377d host host local c520032c3d31 my-bridge-network bridge local 9bc81b63f740 none null local

Miután megtalálta az eltávolítani kívánt hálózatokat, adja át a NETWORK ID t a docker network rm parancsnak. Például a my-bridge-network run névvel rendelkező hálózat eltávolításához:

docker network rm c520032c3d31

Error response from daemon: network my-bridge-network id 6f5293268bb91ad2498b38b0bca970083af87237784017be24ea208d2233c5aa has active endpoints

Távolítsa el az összes fel nem használt hálózatot

Használja a docker network prune parancsot az összes fel nem használt hálózat eltávolításához.

docker network prune

A program felszólít arra, hogy folytassa, használja a -f vagy --force jelzőt a figyelmeztetés megkerülésére.

WARNING! This will remove all networks not used by at least one container. Are you sure you want to continue?

Távolítsa el a hálózatokat a szűrők segítségével

A --filter segítségével eltávolíthatja a hálózatokat a feltétel alapján a --filter .

A cikk írásakor a jelenleg támogatott szűrők until vannak érvényben, until label . Több szűrőt is használhat --filter zászlók használatával.

Például az összes, több mint 12 órával ezelőtt létrehozott hálózat eltávolításához futtassa:

docker network prune -a --filter "until=12h"

Következtetés

Ebben az útmutatóban megmutattuk néhányat a Docker tárolók, képek, kötetek és hálózatok eltávolításának általános parancsairól.

Ellenőrizze a Docker hivatalos dokumentációját is.

dokkmunkás