Kako ukloniti Docker slike, kontejnere i volumene


Docker je open-source, moćna, sigurna, pouzdana i efikasna kontejnerska platforma koja omogućava realnu nezavisnost između aplikacija i infrastrukture. Široko ga usvajaju IT i kompanije u oblaku, kako bi se lako kreirale, implementirale i pokrenule aplikacije.

Kontejner je tehnologija za vizualizaciju operativnih sistema, koja omogućava da aplikacija bude upakovana sa svime što je potrebno za njeno pokretanje, omogućavajući joj da radi nezavisno od operativnog sistema. Slika kontejnera je samostalni, izvršni paket aplikacije koji uključuje sve što je potrebno za njeno pokretanje: kod, vrijeme izvođenja, sistemske alate i biblioteke, kao i konfiguracije.

Već smo pokrili seriju o Dockeru, koja objašnjava kako instalirati Docker, pokrenuti aplikacije u kontejnere i automatski izgraditi docker slike sa dockerfileom.

  1. Instalirajte Docker i naučite osnovnu manipulaciju kontejnerima u CentOS-u i RHEL-u 7/6
  2. Kako implementirati i pokrenuti aplikacije u Docker kontejnerima na CentOS/RHEL 7/6
  3. Automatski izgradite i konfigurirajte Docker slike s Dockerfileom na CentOS/RHEL 7/6
  4. Kako postaviti jednostavan Apache web server u Docker kontejner

U ovom članku ćemo objasniti kako ukloniti docker slike, kontejnere i volumene putem docker alata komandne linije u Linux sistemima.

Kako ukloniti Docker slike

Prije nego što uklonite bilo koju docker sliku, možete navesti sve postojeće slike na vašem sistemu pomoću naredbe za upravljanje slikama.

docker image	        #list the most recently created images
OR
docker image -a 	#list all images

Gledajući izlaz na snimku ekrana koji slijedi, imamo neke slike bez oznake (umjesto toga prikazuje se ), one se nazivaju "viseće slike ". Oni više nemaju nikakav odnos ni sa jednom označenom slikom; više nisu korisni i samo troše prostor na disku.

Možete ukloniti jednu ili više starih ili nekorištenih Docker slika koristeći sliku ID, na primjer (gdje je d65c4d6a3580 ID slike).

docker rmi d65c4d6a3580 				#remove a single image
docker rmi 612866ff4869 e19e33310e49 abe0cd4b2ebc	#remove multiple images

Možete navesti viseće slike (neoznačene slike) koristeći filter zastavicu -f kao što je prikazano.

docker images -f dangling=true	

Da biste uklonili sve viseće slike, što vam omogućava da povratite izgubljeni prostor na disku, koristite bilo koju od ovih naredbi.

docker image prune		#interactively remove dangling images
OR
docker rmi $(docker images -q -f dangling=true)

Da biste uklonili sve što nije povezano ni sa jednim kontejnerom, koristite sljedeću naredbu.

docker image prune -a 	

Kako ukloniti Docker kontejnere

Možete početi tako što ćete navesti sve docker kontejnere na vašem sistemu koristeći sljedeću naredbu.

docker ps
OR
docker ps -a  

Kada identifikujete kontejner(e) koje želite da izbrišete, možete ih ukloniti koristeći njihov ID, na primer.

docker rm 0fd99ee0cb61		#remove a single container
docker rm 0fd99ee0cb61 0fd99ee0cb61   #remove multiple containers

Ako kontejner radi, prvo ga možete zaustaviti i ukloniti kao što je prikazano.

docker stop 0fd99ee0cb61
docker rm -f 0fd99ee0cb61

Također možete prisilno ukloniti kontejner dok je pokrenut dodavanjem --force ili -f zastavice, ovo će mu poslati < jak>SIGKILL signal kao što je prikazano.

docker rm -f 0fd99ee0cb61

Kontejnere možete ukloniti i pomoću filtera. Na primjer, da uklonite sve napuštene kontejnere, koristite ovu naredbu.

docker rm $(docker ps -qa --filter "status=exited")

Za zaustavljanje i uklanjanje svih kontejnera koristite sljedeće naredbe.

docker stop $(docker ps -a -q)	#stop all containers
docker container prune		#interactively remove all stopped containers
OR
docker rm $(docker ps -qa)

Kako ukloniti Docker volumene

Kao i prije, počnite ispisivanjem svih docker volumena na vašem sistemu sa komandom za upravljanje volumenom kao što je prikazano.

docker volume ls

Da biste uklonili jedan ili više volumena, koristite sljedeću naredbu (imajte na umu da ne možete ukloniti volumen koji je u upotrebi od strane kontejnera).

docker volume rm volume_ID 	           #remove a single volume 
docker volume rm volume_ID1 volume_ID2   #remove multiple volumes

Koristite oznaku -f da prisilite uklanjanje jednog ili više tomova.

docker volume rm -f volume_ID

Za uklanjanje visećih volumena koristite sljedeću naredbu.

docker volume rm $(docker volume ls  -q --filter dangling=true)

Da biste uklonili sve nekorištene lokalne volumene, pokrenite sljedeću naredbu. Ovo će interaktivno ukloniti sveske.

docker volume prune	

Kako ukloniti nekorištene ili viseće slike, kontejnere, volumene i mreže

Ovom jednom komandom možete izbrisati sve viseće i nereferencirane podatke kao što su kontejneri zaustavljeni, slike bez kontejnera. Prema zadanim postavkama, volumeni se ne uklanjaju kako bi se spriječilo brisanje vitalnih podataka ako trenutno ne postoji spremnik koji koristi volumen.

docker system prune

Da biste smanjili volumene, jednostavno dodajte oznaku --volumes naredbi ispod kao što je prikazano.

docker system prune --volumes

Napomena: Da biste pokrenuli alat docker komandne linije bez komande sudo, trebate dodati korisnika u docker grupu, na primjer.

sudo usermod -a -G docker aaronkilik

Za više informacija pogledajte stranicu pomoći za gornje naredbe za upravljanje docker objektima.

docker help
docker image help   
docker container help   
docker volume help   

To je sve za sada! U ovom članku smo objasnili kako ukloniti docker slike, kontejnere i volumene putem alata docker komandne linije. Ako imate bilo kakvih pitanja ili razmišljanja za podijeliti, koristite obrazac za povratne informacije u nastavku da nas kontaktirate.