Container Registry-Befehlszeilenschnittstelle und -Namensbereich einrichten
Um Ihre „ Docker “-Bilder in „ IBM Cloud® Container Registry “ zu verwalten, müssen Sie das container-registry Befehlszeilenschnittstellen-Plug-in (CLI) installieren und einen NamespaceEine Sammlung von Repositorys, die Images in einer Registry speichern. Ein Namensbereich ist einem IBM Cloud -Konto zugeordnet, das mehrere Namensbereiche enthalten kann.
in einer RessourcengruppeDie Umgebung und die Einschränkungen, die die darin enthaltenen Ressourceninstanzen einhalten. Ein Benutzer kann einer Ressourcengruppe zugeordnet werden, um die Onlinezusammenarbeit zu ermöglichen.
erstellen.
Beziehen Sie keine personenbezogenen Daten in Ihre Container-Images, Namensbereichsnamen, Beschreibungsfelder oder in Image-Konfigurationsdaten (z. B. Imagenamen oder Imagebezeichnungen) ein.
Um Namensbereiche hinzuzufügen oder zu entfernen, müssen Sie über die Rolle des Managers auf Kontoebene verfügen; weitere Informationen finden Sie im Abschnitt zu den Zugriffsrollen für die Konfiguration von IBM Cloud Container Registry.
Installieren Sie zuerst die IBM Cloud-Befehlszeilenschnittstelle (CLI). Informationen hierzu finden Sie in Einführung in die IBM Cloud-CLI.
container-registry-CLI-Plug-in installieren
Installieren Sie das container-registry CLI-Plug-in, damit Sie die Befehlszeilenschnittstelle zur Verwaltung Ihrer Namespaces und „ Docker “-Images in „ IBM Cloud Container Registry “ verwenden können.
-
Installieren Sie das
container-registryCLI-Plugin, indem Sie den folgenden Befehl ausführen:ibmcloud plugin install container-registryWeitere Informationen zur Installation von Plug-ins finden Sie unter Erweitern von IBM Cloud CLI mit Plug-ins.
-
Optional: Konfigurieren Sie Ihren Docker-Client so, dass Befehle ohne Root-Rechte ausgeführt werden können. Falls Sie diesen Schritt nicht ausführen, müssen Sie die Befehle
ibmcloud login,ibmcloud cr login,docker pullunddocker pushmitsudooder als Root ausführen.
IBM Cloud Container Registry Unterstützt „ Docker “ und andere Clients. Informationen zur Anmeldung mit anderen Clients finden Sie im Abschnitt zum interaktiven Zugriff auf Namensbereiche.
Sie können nun einen eigenen Namensbereich in IBM Cloud Container Registry einrichten.
container-registry-CLI-Plug-in aktualisieren
Sie können das container-registry-CLI-Plug-in regelmäßig aktualisieren, um neue Features zu nutzen.
Aktualisierung der container-registry CLI-Plugin-Version 1.0
Um die Version 1.0 der Container Registry CLI zu aktualisieren, führen Sie den folgenden Befehl aus:
ibmcloud plugin update container-registry
Aktualisierung der container-registry CLI-Plugin-Version 0.1
Um die Version 0.1 der Container Registry CLI zu aktualisieren, führen Sie den folgenden Befehl aus, wobei VERSION_NUMBER die Versionsnummer der CLI ist.
Die Version 0.1 der CLI „ Container Registry “ ist veraltet.
ibmcloud plugin install container-registry -v VERSION_NUMBER
Um zum Beispiel die CLI auf die Version 0.1.584 zu aktualisieren, führen Sie den folgenden Befehl aus:
ibmcloud plugin install container-registry -v 0.1.584
container-registry-CLI-Plug-in deinstallieren
Wenn Sie Container Registry nicht mehr verwenden möchten, können Sie es löschen, indem Sie das container-registry CLI-Plug-in deinstallieren.
Um das container-registry CLI-Plugin zu deinstallieren, führen Sie den folgenden Befehl aus:
ibmcloud plugin uninstall container-registry
Namensbereiche planen
IBM Cloud Container Registry bietet eine mandantenfähige private Image-RegistrierungEin Speicher-und Verteilungsservice, der öffentliche oder private Images zum Erstellen von Containern enthält., die von IBM gehostet und verwaltet wird. In dieser Registry können Sie Ihre Docker-Images speichern, indem Sie einen Registrynamensbereich einrichten.
IAM-Zugriffsberechtigungen können auf Kontoebene, für alle Namespaces oder für den Namespace selbst erteilt werden. Es ist auch möglich, den Zugriff auf der Ebene der Ressourcengruppe zu gewähren. Namensräume werden in einer Ressourcengruppe erstellt, die nicht geändert werden kann, so dass Sie den Zugriff auf der Ebene der Ressourcengruppe gewähren können. Wenn Sie keine Ressourcengruppe angeben und keine Ressourcengruppe anvisiert wird, wird die Standard-Ressourcengruppe zugewiesen, wenn der Namensraum erstellt wird.
Wenn Sie einen älteren Namespace haben, der nicht in einer Ressourcengruppe enthalten ist, können Sie ihn einer Ressourcengruppe zuweisen und dann Berechtigungen für diesen Namespace auf Ressourcengruppenebene festlegen. Weitere Informationen zu Ressourcengruppen finden Sie unter Namensbereiche zu Ressourcengruppen zuordnen.
Namensbereiche, die einer Ressourcengruppe zugeordnet sind, werden auf der Seite Ressourcenliste der IBM Cloud-Konsole angezeigt.
Wenn Sie separate Repositorys verwenden möchten (beispielsweise für Ihre Produktions- und Ihre Staging-Umgebungen), können Sie mehrere Namensbereiche einrichten. Falls Sie die Registry in mehreren IBM Cloud-Regionen verwenden möchten, müssen Sie für jede Region einen eigenen Namensbereich einrichten. Namensbereiche sind innerhalb Regionen eindeutig. Sie können denselben Namensbereichsnamen für jede Region verwenden, solange nicht bereits ein anderer Namensbereich mit diesem Namen in der betreffenden Region eingerichtet wurde.
Sie können einen Container Registry (icr.io) Namensraum nicht für mehrere IBM Cloud Konten freigeben. Ein Namensraum ist Eigentum eines einzigen IBM Cloud Kontos und kann nicht von mehreren Konten gemeinsam genutzt werden.
Sie können in jeder Region über 100 Namensbereiche verfügen.
Wenn Sie ausschließlich mit den von IBM bereitgestellten öffentlichen Images arbeiten möchten, ist die Einrichtung eines Namensbereichs nicht erforderlich.
Wenn Sie sich nicht sicher sind, ob für Ihr Konto bereits ein Namespace festgelegt ist, führen Sie den ibmcloud cr namespace-list Befehl mit der -v Option aus, um vorhandene Namespace-Informationen abzurufen.
Beachten Sie bei der Wahl eines Namens für den Namensbereich die folgenden Regeln:
- Ihr Namensbereich muss in allen IBM Cloud-Konten derselben Region eindeutig sein.
- Ihr Namensbereich muss 4 bis 30 Zeichen lang sein.
- Ihr Namensbereich muss mit einem Buchstaben oder einer Zahl beginnen und enden.
- Ihr Namensbereich darf ausschließlich Kleinbuchstaben, Zahlen, Bindestriche (-) und Unterstreichungszeichen (_) enthalten.
Beziehen Sie keine personenbezogenen Daten in Ihre Namensbereichsnamen ein.
Nachdem Sie Ihren ersten Namespace eingerichtet haben, wird Ihnen der kostenlose Serviceplan „ IBM Cloud Container Registry “ zugewiesen, sofern Sie keinen Upgrade Ihres Plans vornehmen.
Benutzerberechtigungen für die Arbeit mit Namensbereichen
Sie können steuern, welche Benutzer mit Namensbereichen arbeiten können, indem Sie IAM-Rollen verwenden.
-
Um Namensbereiche hinzuzufügen, zuzuordnen oder zu entfernen, müssen Sie über die Rolle des Managers im IBM Cloud Container Registry-Service auf Kontoebene verfügen (siehe Zugriffsrollen für die Konfiguration von IBM Cloud Container Registry).
-
Um Namensbereiche hinzufügen und zuordnen zu können, müssen Sie auch über die Plattformrolle "Anzeigeberechtigter" für die Ressourcengruppe verfügen, in der der Namensbereich erstellt werden soll. Um einem Benutzer die Rolle "Anzeigeberechtigter" für eine Ressourcengruppe zuzuweisen, müssen Sie den folgenden Befehl
ibmcloud iam user-policy-createausführen. DabeiUSERsteht für den Namen des Benutzers undRESOURCE_GROUP_IDfür die Ressourcengruppen-ID:ibmcloud iam user-policy-create USER --roles Viewer --resource-type resource-group --resource RESOURCE_GROUP_ID
-
-
Zum Anzeigen und Analysieren von Namensbereichen müssen Sie über die Rolle 'Leser' oder 'Manager' im IBM Cloud Container Registry-Service verfügen (siehe Zugriffsrollen für die Verwendung von IBM Cloud Container Registry).
Weitere Informationen zu Benutzerrollen finden Sie unter IAM-Zugriffsrichtlinien definieren.
Namensbereich einrichten
Sie müssen einen Namensbereich erstellen, um Docker-Images in IBM Cloud Container Registry zu speichern.
Führen Sie die folgenden Aufgaben aus, bevor Sie beginnen:
- IBM Cloud-Befehlszeilenschnittstelle und das Plug-in
container-registryder Befehlszeilenschnittstelle installieren. - Verwendung und Benennung der Registry-Namensbereiche planen.
Informationen zum Erstellen eines Namensbereichs finden Sie unter Namensbereich einrichten. Namensbereiche werden in der von Ihnen angegebenen Ressourcengruppe erstellt, sodass Sie den Zugriff auf Ressourcen innerhalb des Namensbereichs auf der Ressourcengruppen-Ebene konfigurieren können. Wenn Sie keine Ressourcengruppe angeben und keine Ressourcengruppe als Ziel angegeben ist, wird die Standardressourcengruppe verwendet. Weitere Informationen zu Ressourcengruppen finden Sie unter Ressourcengruppen verwalten.
Namensbereiche, die einer Ressourcengruppe zugeordnet sind, werden auf der Seite Ressourcenliste der IBM Cloud-Konsole angezeigt.
Der Namensbereich muss für alle IBM Cloud-Konten in derselben Region eindeutig sein. Namensbereiche müssen 4 bis 30 Zeichen lang sein und dürfen nur Kleinbuchstaben, Zahlen, Bindestriche (-) und Unterstreichungszeichen (_) enthalten. Namensbereiche müssen mit einem Buchstaben oder einer Zahl beginnen und enden.
Sie können nun Docker-Images per Push-Operation in Ihren Namensbereich in IBM Cloud Container Registry übertragen und diese Images mit anderen Benutzern in Ihrem Konto gemeinsam nutzen. Informationen zur Steuerung des Zugriffs auf Namensbereich in IBM Cloud IAM finden Sie in Richtlinien erstellen.
Namensbereiche zu Ressourcengruppen zuordnen
Namensbereiche, die in Version 0.1.484 oder einer früheren Version der Befehlszeilenschnittstelle bzw. in einer Version der IBM Cloud-Konsole vor dem 29. Juli 2020 erstellt werden, werden keiner Ressourcengruppe zugewiesen. Wenn Sie über einen Namespace verfügen, der keiner Ressourcengruppe zugewiesen ist, können Sie den Namespace einer Ressourcengruppe zuweisen und anschließend Berechtigungen für diesen Namespace auf Ressourcengruppenebene festlegen.
Sie können einer Ressourcengruppe nur ein einziges Mal einen Namensbereich zuordnen. Wenn sich ein Namensbereich in einer Ressourcengruppe befindet, können Sie ihn nicht in eine andere Ressourcengruppe verschieben.
Sie können einer Ressourcengruppe einen vorhandenen Namensbereich mithilfe des Befehls ibmcloud cr namespace-assign zuordnen. Um zu ermitteln, welche
Namensbereiche welchen Ressourcengruppen zugeordnet sind und welche Namensbereiche nicht zugeordnet sind, führen Sie den Befehl ibmcloud cr namespace-list mit der Option -v aus.
Namensbereiche, die einer Ressourcengruppe zugeordnet sind, werden auf der Seite Ressourcenliste der IBM Cloud-Konsole angezeigt.
Wenn die Namensbereiche nicht alle auf der Seite Ressourcenliste angezeigt werden, finden Sie in Warum werden nicht alle meine Namensbereiche in der Ressourcenliste angezeigt? Unterstützung.
Weitere Informationen zu Ressourcengruppen finden Sie unter Ressourcengruppe erstellen.
Führen Sie die folgenden Schritte aus, um einer Ressourcengruppe einen vorhandenen Namensbereich zuzuordnen:
-
Melden Sie sich bei IBM Cloud an.
ibmcloud login -
Um den Namensbereich zu suchen, listen Sie die verfügbaren Namensbereiche auf.
ibmcloud cr namespace-list -v -
Ordnen Sie den Namensbereich einer Ressourcengruppe zu.
Ersetzen Sie
MY_RESOURCE_GROUPdurch den Namen oder die ID der Ressourcengruppe undMY_NAMESPACEdurch den Namen des Namensbereichs.ibmcloud cr namespace-assign -g MY_RESOURCE_GROUP MY_NAMESPACE
Namensbereiche entfernen
Falls Sie einen Registry-Namensbereich nicht mehr benötigen, können Sie ihn aus Ihrem IBM Cloud-Konto entfernen.
-
Melden Sie sich bei IBM Cloud an.
ibmcloud login -
Listen Sie die verfügbaren Namensbereiche auf.
ibmcloud cr namespace-list -
Namensbereich entfernen.
Wenn Sie einen Namensbereich entfernen, werden alle in diesemNamensbereich gespeicherten Images ebenfalls gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.
Ersetzen Sie
MY_NAMESPACEdurch den Namensbereich, den Sie entfernen möchten.ibmcloud cr namespace-rm MY_NAMESPACENachdem Sie einen Namensbereich gelöscht haben, kann es einige Minuten dauern, bis dieser Namensbereich wieder zur erneuten Verwendung verfügbar ist.