Geheimnisse nach Label filtern
In diesem Schritt lernen Sie, wie Sie Geheimnisse (Secrets) anhand von Labels filtern können. Labels sind Schlüssel-Wert-Paare, die Sie an Docker-Objekte, einschließlich Geheimnissen, anhängen können, um sie zu organisieren und zu kategorisieren. Das Filtern nach Labels ist eine leistungsstarke Methode, um Geheimnisse in komplexen Umgebungen zu verwalten.
Zunächst erstellen wir ein neues Geheimnis und fügen ihm während der Erstellung ein Label hinzu. Wir werden ein Geheimnis namens labeled_secret
erstellen und das Label environment=production
hinzufügen.
Führen Sie den folgenden Befehl aus, um das Geheimnis mit einem Label zu erstellen:
echo "production_value" | docker secret create --label environment=production labeled_secret -
Dieser Befehl ähnelt den vorherigen docker secret create
-Befehlen, aber wir haben die Option --label environment=production
hinzugefügt, um ein Label an das Geheimnis anzuhängen.
Jetzt erstellen wir ein weiteres Geheimnis mit einem anderen Label. Wir werden dieses dev_secret
nennen und ihm das Label environment=development
geben.
Führen Sie den folgenden Befehl aus:
echo "development_value" | docker secret create --label environment=development dev_secret -
Wenn Sie jetzt alle Geheimnisse mit docker secret ls
auflisten, werden Sie alle drei Geheimnisse sehen:
docker secret ls
Die Ausgabe zeigt my_secret
, another_secret
, labeled_secret
und dev_secret
.
Um die Geheimnisse zu filtern und nur diejenigen anzuzeigen, die das Label environment=production
haben, können Sie die Option --filter label=environment=production
verwenden.
Führen Sie den folgenden Befehl aus:
docker secret ls --filter label=environment=production
In der Ausgabe sollten Sie nur das labeled_secret
sehen:
ID NAME CREATED
<secret_id_3> labeled_secret About a minute ago
Ähnlich können Sie, um nach Geheimnissen mit dem Label environment=development
zu filtern, --filter label=environment=development
verwenden.
Führen Sie den folgenden Befehl aus:
docker secret ls --filter label=environment=development
Dies zeigt nur das dev_secret
:
ID NAME CREATED
<secret_id_4> dev_secret About a minute ago
Sie können auch nach Geheimnissen filtern, die einen bestimmten Label-Schlüssel haben, unabhängig von seinem Wert, indem Sie --filter label=environment
verwenden.
Führen Sie den folgenden Befehl aus:
docker secret ls --filter label=environment
Dies zeigt sowohl labeled_secret
als auch dev_secret
, da beide den Label-Schlüssel environment
haben:
ID NAME CREATED
<secret_id_3> labeled_secret About 2 minutes ago
<secret_id_4> dev_secret About 2 minutes ago
Das Filtern nach Labels ist eine flexible Methode, um Geheimnisse basierend auf Ihren eigenen definierten Kategorien zu verwalten und abzurufen.