One place for hosting & domains

      Containern

      E-Book: Von Containern zu Kubernetes mit Node.js


      Das komplette E-Book herunterladen!

      Von Containern bis Kubernetes mit Node.js E-Book im EPUB-Format

      Von Containern bis Kubernetes mit Node.js E-Book als PDF

      E-Book-Vorwort

      Dieses Buch dient als Einführung in die Nutzung von Containern und Kubernetes für die Full-Stack-Entwicklung. Sie lernen, wie Sie eine Full-Stack-Anwendung mit Node.js und MongoDB entwickeln und verwalten – zuerst mit Docker, dann mit Docker Compose und schließlich mit Kubernetes.

      Dieses Buch basiert auf der Tutorial-Reihe Von Containern bis Kubernetes mit Node.js, die Sie in der DigitalOcean Community finden. Darin werden folgende Themen behandelt:

      1. Erstellen einer Node.js-Anwendung mit Docker für die Entwicklung

      2. Integrieren einer NoSQL-Datenbank in Ihre Node.js-Anwendung mit MongoDB

      3. Verwalten Ihrer Entwicklungsumgebung mit Docker Compose

      4. Migrieren Ihres Docker Compose-Workflows auf Kubernetes

      5. Skalieren Ihrer Node.js- und MongoDB-Anwendung mit Helm und Kubernetes

      6. Sichern Ihrer containerisierten Node.js-Anwendung mit Nginx, Let’s Encrypt und Docker Compose

      Von Anfang an ist jedes Kapitel so konzipiert, dass es auf dem Vorherigem aufbaut. Wenn Sie jedoch mit einem Thema bereits vertraut sind oder mehr Interesse an einem bestimmten Abschnitt haben, können Sie zu dem Kapitel springen, das das von Ihnen gewünschte Thema behandelt.

      E-Book herunterladen

      Sie können das E-Book im EPUB- oder PDF-Format unter den folgenden Links herunterladen.

      Das komplette E-Book herunterladen!

      Von Containern bis Kubernetes mit Node.js E-Book im EPUB-Format

      Von Containern bis Kubernetes mit Node.js E-Book als PDF

      Weitere Informationen über die App-Entwicklung mit Node.js erhalten Sie in der DigitalOcean Community im Abschnitt Node.js. Oder falls Sie mehr über Container, Docker und Kubernetes lernen möchten, interessieren Sie sich womöglich auch für den selbstständig durchführbaren Kurs Kubernetes für Full-Stack-Entwickler.



      Source link

      Entfernen von Docker-Images, -Containern und -Volumen


      Ein Spickzettel für Docker

      Einführung

      Docker erleichtert das Einschließen Ihrer Anwendungen und Dienste in Containern, damit Sie sie überall ausführen können. Bei der Arbeit mit Docker kann es leicht passieren, dass viele nicht verwendete Images, Container und Datenvolumen gesammelt werden, die die Ausgabe überladen und viel Festplattenspeicher verbrauchen.

      Docker gibt Ihnen alle Tools zur Hand, die Sie für die Bereinigung Ihres Systems über die Befehlszeile benötigen. Dieser Leitfaden in Form eines Spickzettels dient als schnelle Referenz zu Befehlen, die für das Freigeben von Festplattenspeicher und das Organisieren Ihres Systems durch das Entfernen nicht verwendeter Docker-Images,-Container und -Volumen nützlich sind.

      Verwendung dieses Leitfadens:

      • Dieser Leitfaden weist ein Spickzettelformat mit in sich geschlossenen Befehlszeilensnippets auf.
      • Springen Sie zu einem beliebigen Abschnitt, der für die Aufgabe, die Sie ausführen möchten, relevant ist.

      Die Befehlsersatzsyntax command $(command), die in vielen Befehlen genutzt wird, ist in vielen beliebten Shells wie Bash, Zsh und Windows Powershell verfügbar.

      Löschen aller unbenutzten oder unreferenzierten Images, Container, Volumen und Netzwerke

      Docker bietet einen einzelnen Befehl zur Bereinigung beliebiger Ressourcen – Images, Container, Volumen und Netzwerke –, die unreferenziert (also nicht mit einem Container verknüpft) sind:

      Um auch angehaltene Container und alle nicht verwendeten Images zu entfernen (nicht nur unreferenzierte Images), fügen Sie dem Befehl das Flag -a hinzu:

      Entfernen von Docker-Images

      Entfernen von einem oder mehreren spezifischen Images

      Verwenden Sie den Befehl docker images mit dem Flag -a, um die ID der Images zu finden, die Sie entfernen möchten. Dadurch wird Ihnen jedes Image angezeigt, einschließlich dazwischenliegender Image-Ebenen. Wenn Sie die Images gefunden haben, die Sie löschen möchten, können Sie ihre ID oder ihr Tag docker rmi übergeben:

      Auflisten:

      Entfernen:

      Entfernen von unreferenzierten Images

      Docker-Images bestehen aus mehreren Ebenen. Unreferenzierte Images sind Ebenen, die keine Beziehung zu getaggten Images haben. Sie dienen keinem Zweck mehr und verbrauchen Festplattenspeicher. Sie lassen sich finden, indem Sie das Filter-Flag (-f) mit dem Wert dangling=true zum Befehl docker images hinzufügen. Wenn Sie sicher sind, dass Sie sie löschen möchten, können Sie den Befehl docker images purge verwenden:

      Anmerkung: Wenn Sie ein Image erstellen, ohne es mit einem Tag zu versehen, wird das Image in der Liste der unreferenzierten Images angezeigt, da es keine Zuordnung zu einem getaggten Image aufweist. Sie können diese Situation vermeiden, indem Sie beim Erstellen ein Tag angeben; außerdem können Sie Images mit dem Befehl docker tag im Nachhinein mit einem Tag versehen.

      Auflisten:

      • docker images -f dangling=true

      Entfernen:

      Entfernen von Images gemäß einem Muster

      Sie können alle Images finden, die mit einem Muster übereinstimmen, indem Sie eine Kombination aus docker images und grep nutzen. Wenn Sie damit zufrieden sind, können Sie sie durch awk löschen, um die IDs an docker rmi zu übergeben. Beachten Sie, dass diese Dienstprogramme nicht von Docker bereitgestellt werden und nicht unbedingt für alle Systeme verfügbar sind:

      Auflisten:

      • docker images -a | grep "pattern"

      Entfernen:

      • docker images -a | grep "pattern" | awk '{print $3}' | xargs docker rmi

      Alle Images entfernen

      Alle Docker-Images in einem System können aufgelistet werden, indem Sie dem Befehl docker images -a hinzufügen. Wenn Sie sicher sind, dass Sie alle löschen möchten, können Sie das Flag -q hinzufügen, um die Image-ID an docker rmi zu übergeben:

      Auflisten:

      Entfernen:

      • docker rmi $(docker images -a -q)

      Entfernen von Containern

      Entfernen von einem oder mehreren spezifischen Containern

      Verwenden Sie den Befehl docker ps mit dem Flag -a, um den Namen oder die ID der Container zu finden, die Sie entfernen möchten.

      Auflisten:

      Entfernen:

      • docker rm ID_or_Name ID_or_Name

      Entfernen eines Containers beim Beenden

      Falls Sie bei der Erstellung eines Containers wissen, dass Sie ihn nicht behalten möchten, wenn Sie damit fertig sind, können Sie docker run --rm ausführen, um ihn beim Beenden automatisch zu löschen.

      Ausführen und entfernen:

      • docker run --rm image_name

      Entfernen aller beendeten Container

      Sie können Container mit docker ps -a finden und anhand ihres Status filtern: erstellt, wird neu gestartet, wird ausgeführt, angehalten oder beendet. Zum Überprüfen der Liste der beendeten Container verwenden Sie das Flag -f, um anhand des Status zu filtern. Wenn Sie wissen, dass Sie diese Container entfernen möchten, nutzen Sie -q, um die IDs an den Befehl docker rm zu übergeben.

      Auflisten:

      • docker ps -a -f status=exited

      Entfernen:

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

      Entfernen von Containern mit mehr als einem Filter

      Docker-Filter lassen sich kombinieren, indem Sie das Filter-Flag mit einem zusätzlichen Wert wiederholen. Dadurch wird eine Liste von Containern angezeigt, die beide Bedingungen erfüllen. Wenn Sie zum Beispiel alle Container löschen möchten, die als entweder Created (ein Zustand, der bei der Ausführung eines Containers mit ungültigem Befehl auftreten kann) oder Exited markiert sind, können Sie zwei Filter verwenden:

      Auflisten:

      • docker ps -a -f status=exited -f status=created

      Entfernen:

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

      Entfernen von Containern gemäß einem Muster

      Sie können alle Container finden, die mit einem Muster übereinstimmen, indem Sie eine Kombination von docker ps und grep nutzen. Wenn Sie soweit sind, dass Sie über die Liste verfügen, die Sie löschen möchten, können Sie awk und xargs verwenden, um die ID an docker rmi zu übergeben. Beachten Sie, dass diese Dienstprogramme nicht von Docker bereitgestellt werden und nicht unbedingt für alle Systeme verfügbar sind:

      Auflisten:

      • docker ps -a | grep "pattern

      Entfernen:

      • docker ps -a | grep "pattern" | awk '{print $3}' | xargs docker rmi

      Stoppen und Entfernen aller Container

      Sie können die Container in Ihrem System mit docker ps überprüfen. Durch Hinzufügen des Flag -a werden alle Container angezeigt. Wenn Sie sicher sind, dass Sie sie löschen möchten, können Sie das Flag -q hinzufügen, um die IDs an die Befehle docker stop und docker rm zu übergeben:

      Auflisten:

      Entfernen:

      • docker stop $(docker ps -a -q)
      • docker rm $(docker ps -a -q)

      Entfernen von Volumen

      Entfernen von einem oder mehreren spezifischen Volumen (Docker 1.9 und höher)

      Verwenden Sie den Befehl docker volume ls, um nach dem bzw. den Volumennamen zu suchen, die Sie löschen möchten. Dann können Sie ein oder mehrere Volumen mit dem Befehl docker volume rm entfernen:

      Auflisten:

      Entfernen:

      • docker volume rm volume_name volume_name

      Entfernen unreferenzierter Images (Docker 1.9 und höher)

      Da die Aufgabe von Volumen darin besteht, unabhängig von Containern zu existieren, wird ein Volumen bei der Entfernung eines Containers nicht automatisch entfernt. Wenn ein Volumen vorhanden ist und nicht mehr mit Containern verbunden ist, wird es als unreferenziertes Volumen bezeichnet. Um sie zu finden und zu bestätigen, dass Sie sie entfernen möchten, können Sie den Befehl docker volume ls mit einem Filter verwenden, um die Ergebnisse auf unreferenzierte Volumen zu beschränken. Wenn Sie mit der Liste zufrieden sind, können Sie sie alle mit docker volume prune entfernen:

      Auflisten:

      • docker volume ls -f dangling=true

      Entfernen:

      Entfernen eines Containers und seines Volumen

      Wenn Sie ein nicht benanntes Volumen erstellt haben, können Sie es mit dem Flag -v zusammen mit dem Container löschen. Beachten Sie, dass das nur bei nicht benannten Volumen funktioniert. Wenn der Container erfolgreich entfernt wurde, wird seine ID angezeigt. Beachten Sie, dass es keinen Hinweis auf die Entfernung des Volumens gibt. Wenn es nicht benannt ist, wird es leise aus dem System entfernt. Wenn es benannt ist, bleibt es im Stillen vorhanden.

      Entfernen:

      • docker rm -v container_name

      Zusammenfassung

      Dieser Leitfaden behandelt gängige Befehle, die zum Entfernen von Images, Containern und Volumen bei Docker verwendet werden. Es gibt viele weitere Kombinationen und Flags, die dafür genutzt werden können. Einen umfassenden Leitfaden zu den verfügbaren Befehlen finden Sie in der Docker-Dokumentation für docker system prune, docker rmi, docker rm und docker volume rm. Wenn es allgemeine Bereinigungsaufgaben gibt, die im Leitfaden besprochen werden sollten, fragen Sie nach oder machen Sie in den Kommentaren Vorschläge.



      Source link