# Kako odstraniti Dockerjeve kontejnerje in sprostiti vire

Kontejnerji zavzemajo prostor na disku in vire v gostiteljskem sistemu. Z odstranitvijo kontejnerjev, ki jih ne potrebujete več, lahko sprostite dragoceni prostor za shranjevanje in izboljšate zmogljivost sistema.

## Kdaj je treba odstraniti Dockerjeve kontejnerje?

Dockerjevi kontejnerji so **ločene, izvedljive enote**, ki vsebujejo aplikacije in njihove odvisnosti. V nekaterih primerih je smiselno odstraniti Dockerjeve kontejnerje, da bo vaše Dockerjevo okolje čim bolj učinkovito, varno in enostavno za upravljanje.

Najprej in predvsem morate **odstraniti kontejnerje, ko so izpolnili svoj namen**. Ko kontejner uspešno zaključi svojo nalogo ali proces, nima smisla, da ga ohranite v svojem okolju. S tem preprečite, da bi neaktivni kontejnerji po nepotrebnem zasedali vire in prostor.

Prav tako je priporočljivo odstraniti kontejnerje, ki se trenutno ne uporabljajo ali ki že dolgo niso bili posodobljeni. To je še posebej pomembno za zmanjšanje **varnostnih tveganj**, saj lahko starejši kontejnerji vsebujejo zastarele različice programske opreme ali varnostne ranljivosti.

Če imate pomisleke glede varnosti kontejnerja ali sumite, da je ogrožen, ga morate takoj odstraniti. Enako velja za kontejnerje, ki jih zaradi konfliktov ali drugih težav ni mogoče zagnati.

## Kako odstraniti enega ali več Dockerjevih kontejnerjev

Odstranjevanje enega ali več določenih Dockerjevih kontejnerjev je običajen postopek, ko gre za **odstranjevanje nepotrebnih ali neaktivnih kontejnerjev z Dockerjevega gostitelja**.

### Korak 1: Navedite identifikatorje ali imena kontejnerjev

Najprej morate ugotoviti **ID-je ali imena** kontejnerjev, ki jih želite odstraniti. Za prikaz seznama vseh zagnanih in ustavljenih kontejnerjev lahko uporabite naslednji ukaz:

```bash
docker ps -a
```

### Korak 2: Odstranite posodo

Za \*\*ukazom `docker rm**` lahko preprosto vnesete ID-je ali imena kontejnerjev, ločene s presledki:

```bash
docker rm container_id_or_name1 container_id_or_name2
```

## Kako odstraniti Dockerjev kontejner ob izhodu

Če želite kontejner samodejno odstraniti po njegovem zaključku, pri zagonu kontejnerja z ukazom `docker run` nastavite oznako `--rm`. Ta oznaka poskrbi, da se kontejner **samodejno odstrani** takoj, ko konča delovanje.

```bash
docker run --rm image_name
```

## Kako odstraniti vse zaprte Docker-kontejnerje

Prav tako je mogoče vse zaprte kontejnerje odstraniti naenkrat, tako da jih filtrirate glede na njihov status in jih odstranite z ukazom `rm`.

### Korak 1: Prikaži seznam zaprtih kontejnerjev

Z možnostjo `-f status=exited` lahko filtrirate seznam kontejnerjev, da se prikažejo le tisti, ki so se zaprli.

```bash
docker ps -a -f status=exited
```

### Korak 2: Odstranite zaprte posode

Rezultat prejšnjega koraka uporabimo za pridobitev identifikacijskih številk zaprtih kontejnerjev in jih neposredno posredujemo ukazu `docker rm`.

```bash
docker rm $(docker ps -a -f status=exited -q)
```

## Kako odstraniti vse Docker-kontejnerje z več kot enim filtrom

Dockerjeve kontejnerje z več kot enim filtrom lahko odstranite, če uporabite ukaz `docker ps` **skupaj z možnostmi filtriranja** in nato izhodne podatke posredujete ukazu `docker rm`.

### 1. korak: Prikaži zabojnike s filtri

Najprej vnesemo ukaz `docker ps` z možnostmi filtriranja, da pridobimo seznam kontejnerjev v skladu z želenimi merili. Poleg **statusa »exited«** je na voljo še status **»created** «. Kontejnerji s **statusom »created«** so tisti, ki so bili ustvarjeni, a še niso bili izvedeni.

```bash
docker ps -a -f status=exited -f status=created
```

### Korak 2: Odstranite Dockerjev kontejner

Tako kot v zgornjem primeru izhodno vrednost prenesemo na `docker rm`.

```bash
docker rm $(docker ps -a -f status=exited -f status=created -q)
```

## Kako odstraniti Dockerjeve kontejnerje po določenem vzorcu

Iskanje vseh Dockerjevih kontejnerjev, ki ustrezajo določenemu vzorcu, in njihovo odstranjevanje **s pomočjo `awk`, `xargs` in `docker rm`** je učinkovit način za selektivno odstranjevanje kontejnerjev.

### Korak 1: Napišite seznam vseh posod z vzorcem

Če uporabite ukaz `docker ps -a` v kombinaciji z ukaz `grep`, boste dobili vse kontejnerje z imeni ali oznakami, ki ustrezajo določenemu vzorcu. Na primer, lahko prikažete vse kontejnerje, katerih imena se začnejo z »test-«:

```bash
docker ps -a | grep "test-"
```

### Korak 2: Odstranite Dockerjeve kontejnerje

Z ukazom `awk` lahko **izberete določene stolpce iz izhodnih rezultatov**. V tem primeru želimo izločiti prvi stolpec, ki vsebuje identifikacijske številke kontejnerjev. Z `xargs` lahko te identifikacijske številke posredujemo ukazu `docker rmi` in odstranimo Dockerjeve kontejnerje.

```bash
docker ps -a | grep "test-" | awk '{print $1}' | xargs docker rmi
```

## Kako ustaviti in odstraniti vse Docker-kontejnerje

Naenkrat lahko zaustavite in odstranite vse aktivne in neaktivne kontejnerje v sistemu. To je lahko koristno, če želite temeljito **počistiti svoje okolje Docker**.

### Korak 1: Napišite seznam vseh posod

Vnesite naslednji ukaz, da preverite seznam kontejnerjev:

```bash
docker ps -a
```

### Korak 2: Ustavite zabojnike

Ko boste pripravljeni, preusmerite izhod na `docker stop`. S tem boste ustavili vse kontejnerje.

```bash
docker stop $(docker ps -a -q)
```

### Korak 3: Odstranite Dockerjeve kontejnerje

Ko so vsi kontejnerji ustavljeni, jih lahko odstranite z ukazom `docker rm`:

```bash
docker rm $(docker ps -a -q)
```

V nasprotju z običajnimi Dockerjevimi kontejnerji so Dockerjevi kontejnerski diski mehanizmi, ki omogočajo trajno shranjevanje podatkov ter njihovo izmenjavo med kontejnerji in gostiteljskim sistemom.

V našem digitalnem vodniku najdete še druge navodila za Docker, med drugim [tudi navodila za](https://www.ionos.com/sl-si/digitalguide/streznik/nastavitve/izbrisi-slike-dockerja/) [odstranitev Dockerjevega prostora](https://www.ionos.com/sl-si/digitalguide/streznik/nastavitve/docker-volume-loeschen/) in [izbris Dockerjeve slike](https://www.ionos.com/sl-si/digitalguide/streznik/nastavitve/izbrisi-slike-dockerja/).


This is a markdown version of: [https://www.ionos.com/sl-si/digitalguide/streznik/nastavitve/odstrani-docker-kontejnerje/](https://www.ionos.com/sl-si/digitalguide/streznik/nastavitve/odstrani-docker-kontejnerje/) for AI/LLM consumption.