Repositorys basierend auf einem Filter deaktivieren
In diesem Schritt werden wir untersuchen, wie Sie Filterung nutzen können, um zu steuern, mit welchen Repositorys Sie interagieren. Docker verfügt nicht über einen integrierten Befehl, um Repositorys basierend auf beliebigen Filtern "zu deaktivieren", wie Sie es bei der Filterung von Dateien tun könnten. Sie können jedoch ein ähnliches Ergebnis erzielen, indem Sie Filterung beim Auflisten oder Suchen nach Images verwenden und Ihre docker pull
-Befehle präzise formulieren.
Filterung ist eine leistungsstarke Funktion in Docker, die es Ihnen ermöglicht, die Ergebnisse von Befehlen wie docker images
, docker ps
und docker search
einzugrenzen. Sie können basierend auf verschiedenen Kriterien filtern, wie z. B. Imagename, Tag, Erstellungszeit und mehr. Durch die Verwendung von Filtern können Sie effektiv Repositorys ignorieren oder ausschließen, die bestimmten Mustern entsprechen, und sie somit aus Ihrer aktuellen Ansicht oder Ihren Operationen "deaktivieren".
Beginnen wir damit, alle Images aufzulisten, die wir derzeit haben, einschließlich der ubuntu
- und hello-world
-Images.
docker images
Nehmen wir nun an, wir möchten nur die Images sehen, die zum library
-Namespace gehören (der offizielle Images wie ubuntu
und hello-world
enthält). Wir können die --filter
-Option mit dem reference
-Kriterium verwenden. Der reference
-Filter passt auf den Imagenamen, einschließlich der optionalen Registry und des Tags.
docker images --filter "reference=*/library/*"
Dieser Befehl listet die Images auf, deren Referenz /library/
enthält. Sie sollten die ubuntu
- und hello-world
-Images in der Liste sehen. Dies zeigt, wie Sie filtern können, um bestimmte Repositorys einzuschließen.
Um das "Deaktivieren" von Repositorys basierend auf einem Filter zu simulieren, würden Sie im Wesentlichen das Gegenteil tun: Sie filtern, um die Repositorys auszuschließen, die Sie nicht sehen oder mit denen Sie nicht interagieren möchten. Beispielsweise, wenn Sie alle Images auflisten möchten, außer denen aus dem library
-Namespace, bräuchten Sie einen komplexeren Ansatz, möglicherweise unter Verwendung von Skripten, um alle Images aufzulisten und dann basierend auf dem Muster auszufiltern.
Eine praktischere Anwendung der Filterung im Zusammenhang mit dem "Deaktivieren" ist die Suche nach Images. Sie können die Suchergebnisse filtern, um Images zu finden, die bestimmten Kriterien entsprechen, und andere zu ignorieren.
Suchen wir nach Images, die das Wort "ubuntu" enthalten, auf Docker Hub.
docker search ubuntu
Dies zeigt eine Liste von Repositorys im Zusammenhang mit Ubuntu. Nehmen wir nun an, wir möchten nur die offiziellen Ubuntu-Images sehen. Wir können die --filter
-Option mit dem is-official=true
-Kriterium verwenden.
docker search ubuntu --filter "is-official=true"
Dieser Befehl filtert die Suchergebnisse, um nur die offiziellen Images anzuzeigen. Durch die Verwendung dieses Filters "deaktivieren" oder ignorieren Sie effektiv alle nicht-offiziellen Ubuntu-Repositorys in den Suchergebnissen.
Der wichtigste Punkt ist, dass es zwar keinen direkten "Deaktivieren per Filter"-Befehl für das Ziehen von Images gibt, Sie aber die Filterung in Befehlen wie docker images
und docker search
nutzen können, um Ihre Ansicht der verfügbaren Repositorys zu verwalten und die Interaktion mit denen zu vermeiden, die Sie "deaktivieren" möchten.
Zur Überprüfung dieses Schritts werden wir prüfen, ob Sie den docker search
-Befehl mit dem is-official=true
-Filter erfolgreich verwendet haben.