# Πώς να διαγράψετε κοντέινερ Docker και να ελευθερώσετε πόρους

Τα κοντέινερ καταλαμβάνουν χώρο στο δίσκο και πόρους στο σύστημα υποδοχής σας. Καταργώντας τα κοντέινερ που δεν χρειάζεστε πλέον, μπορείτε να απελευθερώσετε πολύτιμο χώρο αποθήκευσης και να βελτιώσετε την απόδοση του συστήματός σας.

## Πότε πρέπει να διαγράψετε τα κοντέινερ του Docker;

Τα κοντέινερ Docker είναι **απομονωμένες, εκτελέσιμες μονάδες** που περιέχουν εφαρμογές και τις εξαρτήσεις τους. Σε διάφορες περιπτώσεις, είναι σκόπιμο να καταργείτε κοντέινερ Docker, ώστε να διασφαλίσετε ότι το περιβάλλον Docker σας είναι όσο το δυνατόν πιο αποδοτικό, ασφαλές και εύκολο στη διαχείριση.

Πρώτα απ’ όλα, θα πρέπει **να διαγράφετε τα containers μόλις εκπληρώσουν τον σκοπό τους**. Μόλις ένα container ολοκληρώσει με επιτυχία τη συγκεκριμένη εργασία ή διαδικασία του, δεν έχει νόημα να το διατηρείτε στο περιβάλλον σας. Με αυτόν τον τρόπο αποτρέπετε τα ανενεργά containers από το να δεσμεύουν πόρους και να καταλαμβάνουν χώρο χωρίς λόγο.

Είναι επίσης καλή ιδέα να καταργείτε τα κοντέινερ που δεν χρησιμοποιούνται ενεργά ή δεν έχουν ενημερωθεί εδώ και πολύ καιρό. Αυτό είναι ιδιαίτερα σημαντικό για την ελαχιστοποίηση **των κινδύνων ασφαλείας**, καθώς τα παλαιότερα κοντέινερ ενδέχεται να περιέχουν ξεπερασμένες εκδόσεις λογισμικού ή να παρουσιάζουν κενά ασφαλείας.

Εάν έχετε ανησυχίες σχετικά με την ασφάλεια ενός κοντέινερ ή υποψιάζεστε ότι ενδέχεται να έχει παραβιαστεί, θα πρέπει να το καταργήσετε αμέσως. Το ίδιο ισχύει και για τα κοντέινερ που δεν μπορούν να ξεκινήσουν λόγω συγκρούσεων ή άλλων προβλημάτων.

## Πώς να διαγράψετε ένα ή περισσότερα κοντέινερ Docker

Η κατάργηση ενός ή περισσότερων συγκεκριμένων κοντέινερ Docker είναι μια συνήθης διαδικασία όταν πρόκειται για **την αφαίρεση περιττών ή ανενεργών κοντέινερ από τον κεντρικό υπολογιστή Docker**.

### Βήμα 1: Καταγράψτε τα αναγνωριστικά ή τα ονόματα των κοντέινερ

Πρώτα πρέπει να βρείτε τα **αναγνωριστικά ή τα ονόματα** των κοντέινερ που θέλετε να καταργήσετε. Μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή για να εμφανίσετε μια λίστα με όλα τα κοντέινερ που εκτελούνται και αυτά που έχουν σταματήσει:

```bash
docker ps -a
```

### Βήμα 2: Αφαιρέστε το δοχείο

Μπορείτε απλά να εισαγάγετε τα αναγνωριστικά ή τα ονόματα των κοντέινερ, διαχωρισμένα με κενά, μετά την **εντολή docker rm**:

```bash
docker rm container_id_or_name1 container_id_or_name2
```

## Πώς να καταργήσετε ένα κοντέινερ Docker κατά την έξοδο

Για να καταργήσετε αυτόματα ένα κοντέινερ μετά την ολοκλήρωσή του, ορίστε την επιλογή `--rm` κατά την εκκίνηση του κοντέινερ με την εντολή `docker run`. Αυτή η επιλογή προκαλεί την **αυτόματη κατάργηση** του κοντέινερ αμέσως μόλις ολοκληρωθεί.

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

## Πώς να τερματίσετε όλα τα ενεργά κοντέινερ Docker

Είναι επίσης δυνατό να διαγραφούν ταυτόχρονα όλα τα κοντέινερ που έχουν τερματιστεί, φιλτράροντας τα κοντέινερ ανάλογα με την κατάστασή τους και διαγράφοντάς τα με την εντολή `rm`.

### Βήμα 1: Εμφάνιση των τερματισμένων κοντέινερ

Με την επιλογή `-f status=exited`, μπορείτε να φιλτράρετε τη λίστα των κοντέινερ ώστε να εμφανίζονται μόνο τα κοντέινερ που έχουν τερματιστεί.

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

### Βήμα 2: Αφαίρεση των κοντέινερ που έχουν αποχωρήσει

Χρησιμοποιούμε τα αποτελέσματα του προηγούμενου βήματος για να λάβουμε τους αναγνωριστικούς κωδικούς των κοντέινερ που έχουν τερματιστεί και τους διαβιβάζουμε απευθείας στην εντολή `docker rm`.

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

## Πώς να διαγράψετε όλα τα κοντέινερ Docker που έχουν περισσότερα από ένα φίλτρα

Μπορείτε να απαλλαγείτε από τα κοντέινερ Docker που έχουν περισσότερα από ένα φίλτρα, αν χρησιμοποιήσετε την εντολή `docker ps` **μαζί με τις επιλογές φίλτρου** και στη συνέχεια μεταβιβάσετε το αποτέλεσμα στην εντολή `docker rm`.

### Βήμα 1: Εμφάνιση των κοντέινερ με φίλτρα

Πρώτα, πληκτρολογούμε την εντολή `docker ps` με τις επιλογές φίλτρου για να λάβουμε μια λίστα με τα containers σύμφωνα με τα επιθυμητά κριτήρια. **Η κατάσταση «created»** είναι μια επιπλέον επιλογή, παράλληλα με **την κατάσταση «exited**». Τα containers με την **κατάσταση «created»** είναι containers που έχουν δημιουργηθεί αλλά δεν έχουν εκτελεστεί ακόμη.

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

### Βήμα 2: Αφαίρεση του κοντέινερ Docker

Όπως και στο παραπάνω παράδειγμα, μεταβιβάζουμε το αποτέλεσμα στην τιμή `docker rm`.

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

## Πώς να διαγράψετε κοντέινερ Docker σύμφωνα με ένα πρότυπο

Ο εντοπισμός όλων των κοντέινερ Docker που ανταποκρίνονται σε ένα συγκεκριμένο πρότυπο και η επακόλουθη διαγραφή τους **με `awk`, `xargs` και `docker rm`** αποτελεί έναν αποτελεσματικό τρόπο για την επιλεκτική διαγραφή κοντέινερ.

### Βήμα 1: Καταγράψτε όλα τα δοχεία με ένα μοτίβο

Αν χρησιμοποιήσετε την εντολή `docker ps -a` σε συνδυασμό με `grep`, θα λάβετε όλα τα κοντέινερ με ονόματα ή ετικέτες που ταιριάζουν με ένα συγκεκριμένο πρότυπο. Για παράδειγμα, μπορείτε να εμφανίσετε όλα τα κοντέινερ με ονόματα που ξεκινούν με «test-»:

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

### Βήμα 2: Αφαίρεση κοντέινερ Docker

Η εντολή `awk` σάς επιτρέπει να **επιλέξετε συγκεκριμένες στήλες από το αποτέλεσμα της εξόδου**. Εδώ, θέλουμε να εξαγάγουμε την πρώτη στήλη που περιέχει τα αναγνωριστικά των κοντέινερ. Μπορούμε να χρησιμοποιήσουμε `xargs` για να μεταβιβάσουμε τα αναγνωριστικά στην εντολή `docker rmi` και να καταργήσουμε τα κοντέινερ Docker.

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

## Πώς να σταματήσετε και να διαγράψετε όλα τα κοντέινερ Docker

Μπορείτε να σταματήσετε και να καταργήσετε ταυτόχρονα όλα τα ενεργά και ανενεργά κοντέινερ στο σύστημά σας. Αυτό μπορεί να είναι χρήσιμο αν θέλετε να πραγματοποιήσετε έναν ενδελεχή **καθαρισμό του περιβάλλοντος Docker σας**.

### Βήμα 1: Καταγράψτε όλα τα δοχεία

Πληκτρολογήστε την ακόλουθη εντολή για να ελέγξετε τη λίστα των κοντέινερ:

```bash
docker ps -a
```

### Βήμα 2: Σταματήστε τα δοχεία

Όταν είστε έτοιμοι, προωθήστε την έξοδο στο `docker stop`. Αυτό θα σταματήσει όλα τα κοντέινερ.

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

### Βήμα 3: Κατάργηση των κοντέινερ Docker

Αφού σταματήσουν όλα τα containers, μπορείτε να τα καταργήσετε χρησιμοποιώντας την εντολή `docker rm`:

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

Σε αντίθεση με τα κανονικά κοντέινερ Docker, οι τόμοι κοντέινερ Docker είναι μηχανισμοί που επιτρέπουν τη διατήρηση των δεδομένων και την ανταλλαγή τους μεταξύ των κοντέινερ και του συστήματος υποδοχής.

Στον Ψηφιακό Οδηγό μας, μπορείτε να βρείτε και άλλα μαθήματα για το Docker, όπως πώς να καταργήσετε έναν τόμο Docker και [πώς να διαγράψετε μια εικόνα Docker](https://www.ionos.com/el-gr/digitalguide/diakomistis/rythmiseis/diagrafi-eikonon-docker/).


This is a markdown version of: [https://www.ionos.com/el-gr/digitalguide/diakomistis/rythmiseis/diagrafi-konteiner-docker/](https://www.ionos.com/el-gr/digitalguide/diakomistis/rythmiseis/diagrafi-konteiner-docker/) for AI/LLM consumption.