GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Docker

So entfernen Sie alle Docker-Images, Container, Volumes, Netzwerke und ungenutzte Ressourcen

Docker erobert die Welt im Sturm, weil es eine wertvolle Open-Source-Plattform ist, mit der Anwendungen ausgeführt werden können, ohne eine tatsächliche virtuelle Maschine jeglicher Art zu verwenden. Dies gibt Benutzern die Flexibilität, Anwendungen in Softwarecontainern auszuführen und zu testen, ohne sich Gedanken über die Kompatibilität machen zu müssen, wodurch Ihr virtueller privater Server zu einer großartigen Entwicklungsplattform wird.

In diesem Tutorial bringen wir Ihnen die grundlegenden Befehle bei, die jeder Benutzer kennen sollte, wie z. B. das Entfernen nicht verwendeter Docker-Images, Container, Volumes und Netzwerke.

Entfernen aller ungenutzten Docker-Ressourcen

Wichtig! Denken Sie daran, dass Sie zuerst über SSH auf Ihr VPS zugreifen und Docker auf Ihrem Computer installiert haben müssen.

Docker entfernt nicht selbst ungenutzte Daten, was dazu führen kann, dass Ihr Speicherplatz unübersichtlich wird.

Wenn Sie alle Bilder, Container und Netzwerke entfernen möchten, die keinem Container zugeordnet sind

docker system prune

Dieser Befehl entfernt alles , einschließlich baumelnder Bilder und angehaltener Container, wie die folgende Meldung Ihnen sagt:

WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all dangling images
- all dangling build cache

Are you sure you want to continue? [y/N]

.

Um alle ungenutzten Bilder einzuschließen, führen Sie den folgenden Befehl aus:

docker system prune -a

Hier ist die Warnmeldung, die Sie sehen, bevor Sie fortfahren:

WARNING! This will remove:
  - all stopped containers
  - all networks not used by at least one container
  - all images without at least one container associated to them
  - all build cache

Are you sure you want to continue? [y/N]

Die beiden vorherigen Befehle berühren jedoch keine unbenutzten Volumes – dies geschieht bewusst aus Sicherheitsgründen.

Wenn Sie das auch entfernen möchten, verwenden Sie den folgenden Befehl:

docker system prune --volumes

Wichtig! Beachten Sie, dass die Verwendung von rm und beschneiden Befehle ist nicht umkehrbar.

Wie entferne ich Docker-Images?

Um alle Ihre Docker-Images anzuzeigen, können Sie Folgendes verwenden:

docker images -a

Wenn Sie ein oder mehrere Docker-Images entfernen möchten, können Sie diesen Befehl verwenden und die IMAGE ID auflisten wie hier gezeigt:

docker image rm IMAGE_ID

Um die neusten und ungetaggten losen Bilder zu entfernen, verwenden wir "Docker remove all images" Befehl wie hier gezeigt:

docker image prune

Um jedoch Docker-Images zu entfernen, die in vorhandenen Containern vorhanden sind, die ebenfalls getaggt sind, können wir Folgendes verwenden:

docker image prune –a

Wenn Sie beispielsweise alle Bilder entfernen möchten, die unter einen bestimmten Zeitraum fallen, verwenden Sie den Befehl:

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

Wenn Sie mehr über –filter erfahren möchten Flags finden Sie auf der offiziellen Dokumentationsseite.

Wie entferne ich Docker-Container?

Ähnlich wie zuvor müssen Sie diesen Befehl ausführen, um die Liste aller Docker-Container anzuzeigen:

docker container ls -a

Wenn Sie einen bestimmten Container entfernen möchten, geben Sie die CONTAINER-ID ein wie in diesem Beispiel gezeigt:

docker container rm CONTAINER_ID

Um alle Container zu entfernen, die angehalten wurden Folgen Sie in der Anwendung diesem Befehl:

docker container prune

Beachten Sie, dass dadurch alle angehaltenen Container entfernt werden. Verwenden Sie den –Filter , um die Liste der Container anzuzeigen, die mit dem oben genannten Befehl gelöscht werden Flagge:

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

Um das Entfernen gestoppter Container beispielsweise zeitlich einzuschränken, können Sie folgenden Befehl verwenden:

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

Wenn Sie einen Container entfernen möchten, sobald Sie damit fertig sind, beginnen Sie ihn, indem Sie ein –rm hinzufügen Flagge. Hier ist ein Beispiel zum Entfernen eines solchen Containers:

docker run --rm CONTAINER_ID

Wenn Sie fertig sind, wird der Container automatisch gelöscht.

Wie entferne ich Docker-Volumes?

Volumes werden für mehrere Container verwendet und es ist sehr wahrscheinlich, dass es eine Reihe von entweder unbenutzten oder angehaltenen Volume-Dateien gibt.

Diese Dateien werden nicht automatisch entfernt, und es gibt auch keine entsprechende Einstellung in Docker, da dies zu erheblichen Datenverlusten oder -beschädigungen führen kann.

Verwenden Sie zunächst den folgenden Befehl, um alle Docker-Volume-IDs abzurufen:

docker volume ls

Wenn Sie ein bestimmtes Volume entfernen möchten, verwenden Sie diesen Befehl gefolgt von VOLUME NAME :

docker volume rm VOLUME_NAME

Um alle ungenutzten Volumes mit einem einzigen Befehl zu entfernen, können Sie Folgendes verwenden:

docker volume prune

Wenn Docker-Volumes mit Labels versehen sind, können Sie auch Folgendes verwenden:

docker volume prune --filter "label!=keep"

In diesem Beispiel entfernt der Befehl nur die Volume-Dateien, die nicht gekennzeichnet und mit dem „Behalten“ versehen sind Bezeichnung.

Wie entferne ich Docker-Netzwerke?

Obwohl Docker-Netzwerke nicht viel Speicherplatz beanspruchen, kann es einige Probleme verursachen, wenn unnötige Dateien nicht von der Festplatte gelöscht werden.

Ein Problem ist, dass es Regeln für iptables und Bridge-Netzwerke mit Routing-Tabelleneinträgen erstellt, was auf lange Sicht einige Probleme verursachen kann.

Für eine vollständige Liste der NETZWERK-IDs , verwenden Sie den folgenden Befehl:

docker network ls

Um ein bestimmtes Netzwerk zu entfernen, können Sie Folgendes verwenden:

docker network rm NETWORK_ID

Wenn Sie alle ungenutzten Netzwerke entfernen möchten, verwenden Sie den folgenden Befehl:

docker network prune

Für einen Filter basierend auf dem Zeitrahmen, in diesem Beispiel 24 Stunden, können Sie stattdessen einfach Folgendes eingeben:

docker network prune --filter "until=24h"

Warum Docker verwenden?

Durch die Arbeit mit Docker läuft die App reibungsloser, unabhängig vom System, der Bildschirmgröße oder dem Webbrowser, auf dem sie verwendet wird. Docker erleichtert das Bereitstellen, Starten und Testen von Anwendungen ohne große Schwierigkeiten. Kurz gesagt, es ist schnell, zeitsparend und leicht zu erlernen.

Hier sind einige weitere Beispiele dafür, warum Docker eine so beliebte Container-Plattform ist.

  • Kostengünstig und kosteneffizient. Im Gegensatz zu traditionelleren Containerplattformen ist die Infrastruktur von Docker minimal, was dazu beiträgt, dass das Unternehmen viel Geld für virtuelle Maschinen und zugehörige Ausrüstung spart. Am wichtigsten ist, dass Docker mit weniger Mitarbeitern bewältigt werden kann, was auch hilft, Geld zu sparen, wenn Ihr Budget zu knapp ist.
  • Tolle allgemeine Kompatibilität. Docker ermöglicht es den Entwicklern, Anwendungen auf dem Container zu erstellen, auszuführen und zu testen, um einen reibungslosen Betrieb auf jedem System zu gewährleisten. Es bietet viel Raum für Experimente, die es Softwareentwicklern ermöglichen, Anwendungen mit weniger Fehlern zu erstellen. Es ermöglicht auch eine bessere Portabilität mit einfach einzurichtenden Codebasen.
  • Schnellere Produktivität. Eines der herausragenden Merkmale von Docker ist, dass ein einziger Befehl weitere Schritte erledigen kann. Dies erhöht die Effizienz Ihres Arbeitsablaufs und die schnellere Konfiguration einer Anwendung, wodurch die Produktivität gesteigert wird.
  • Multi-Cloud-Plattformkompatibilität. Docker ermöglicht Multi-Cloud-Computing, eine Methode, die viele Systeme auf der ganzen Welt vollständig angenommen haben. Amazon Web Services (AWS) und die Google Compute Platform (GCP) sind nur einige der Beispiele, bei denen Docker sehr beliebt ist. Viele Anwendungen, darunter OpenStack, Microsoft Azure, Chef, Puppet und mehr, sind in hohem Maße mit Docker-Containern kompatibel.
  • Erhöhte Sicherheit. Docker ist sicher und schnell, was bedeutet, dass jede Anwendung, die auf Docker-Containern ausgeführt wird, voneinander isoliert bleibt, was im Gegenzug weniger Sicherheitsprobleme verursacht. Es ermöglicht dem Entwickler, die vollständige Verwaltung der Anwendung und des Verkehrsflusses zu übernehmen, ohne Server- oder Sicherheitsprobleme zu verursachen.

Fazit

Heutzutage gewinnt Docker erheblich an Bedeutung und wird von vielen namhaften Unternehmen weltweit eingesetzt. Es ist bis heute eine der besten Plattformen, die bequemere Entwicklungslösungen, unbegrenztes Testen und Experimentieren ermöglicht, um Anwendungen schnell und effizient zu erstellen.

In diesem Tutorial haben Sie gelernt, wie Sie nicht verwendete Docker-Images, Container, Volumes und Netzwerke löschen. Wenn Sie weitere Fragen haben, können Sie unten einen Kommentar hinterlassen.


Docker
  1. So exportieren und importieren Sie Docker-Container

  2. So verwenden Sie Docker-Images, Container und Dockerfiles im Detail

  3. Was sind Docker-Volumes und wie verwenden Sie sie?

  4. Was ist Podman und wie unterscheidet es sich von Docker?

  5. So entfernen Sie alle Docker-Container

So verwenden Sie Docker Cp zum Kopieren von Dateien zwischen Host und Containern

So bereinigen und löschen Sie Docker-Images

So pushen und ziehen Sie Docker-Images mit der Container Registry von DigitalOcean

So überprüfen Sie die Speicherplatznutzung für Docker-Images, Container und Volumes

So entfernen Sie Docker-Container

So stoppen Sie Docker-Container