Einführung in Azure Container Registry
Azure Container Registry ist ein verwalteter Registrierungsdienst, der auf Version 2.0 der Open Source-Docker-Registrierung basiert. Erstellen und verwalten Sie Azure-Containerregistrierungen, um Ihre Containerimages und zugehörigen Artefakte zu speichern und zu verwalten.
Verwenden Sie Containerregistrierungen mit Ihren vorhandenen Pipelines für die Entwicklung und Bereitstellung von Containern, oder verwenden Sie Azure Container Registry-Tasks, um Containerimages in Azure zu erstellen. Erstellen Sie bedarfsgesteuerte oder voll automatisierte Builds mit Triggern wie etwa Quellcode-Commits und Basisimage-Aktualisierungen.
Weitere Informationen zu Docker- und Registrierungskonzepten finden Sie in der Übersicht über Docker in der Docker-Dokumentation sowie unter Informationen zu Registrierungen, Repositorys und Images.
Anwendungsfälle
Rufen Sie Images aus einer Azure-Containerregistrierung für verschiedene Bereitstellungsziele ab:
- Skalierbare Orchestrierungssysteme zum Verwalten von Anwendungen in Containern über Cluster mit Hosts hinweg, z.B. DC/OS, Docker Swarm und Kubernetes.
- Azure-Dienste, die das Erstellen und Ausführen von Anwendungen im großen Stil unterstützen, z. B. Azure Kubernetes Service (AKS), App Service, Batch und Service Fabric
Entwickler können im Rahmen eines Workflows der Containerentwicklung auch eine Pushübertragung in eine Containerregistrierung durchführen. Beispielsweise können Sie eine Containerregistrierung über ein CI/CD-Tool (Continuous Integration und Continuous Delivery) wie Azure Pipelines oder Jenkins als Ziel festlegen.
Konfigurieren Sie Azure Container Registry-Tasks so, dass Anwendungsimages automatisch neu erstellt werden, wenn ihre Basisimages aktualisiert werden, oder automatisieren Sie das Erstellen von Images, wenn Ihr Team Code in ein Git-Repository committet. Erstellen Sie Tasks mit mehreren Schritten, um das parallele Erstellen, Testen und Patchen von Containerimages in der Cloud zu automatisieren.
Azure bietet Tools wie die Azure CLI und das Azure-Portal sowie API-Unterstützung für die Verwaltung Ihrer Containerregistrierungen. Installieren Sie optional die Docker-Erweiterung und die Azure-Kontoerweiterung für Visual Studio Code. Sie können diese Erweiterungen für Folgendes in Visual Studio Code verwenden: zum Pullen von Images aus einer Containerregistrierung, zum Pushen von Images in eine Containerregistrierung oder zum Ausführen von Azure Container Registry-Tasks.
Schlüsselfunktionen
Registrierungsdienstebenen: Erstellen Sie in Ihrem Azure-Abonnement eine oder mehrere Containerregistrierungen. Registrierungen sind in drei Dienstebenen verfügbar: Basic, Standard und Premium. Jede Dienstebene unterstützt die Webhookintegration, die Registrierungsauthentifizierung mit Microsoft Entra ID und Löschfunktionen.
Nutzen Sie den lokalen Speicher in räumlicher Nähe zu Ihren Containerimages, indem Sie eine Registrierung an demselben Azure-Standort wie Ihre Bereitstellungen erstellen. Verwenden Sie das Georeplikations-Feature von Premium-Registrierungen für die erweiterte Replikations- und Containerimageverteilung.
Sicherheit und Zugriff: Melden Sie sich mithilfe der Azure CLI oder mit dem Standardbefehl
docker login
bei einer Registrierung an. Azure Container Registry überträgt Containerimages über HTTPS und unterstützt TLS zum Sichern von Clientverbindungen.Wichtig
Ab dem 13. Januar 2020 erfordert Azure Container Registry, dass alle sicheren Verbindungen von Servern und Anwendungen TLS 1.2 verwenden. Aktivieren Sie TLS 1.2 mithilfe eines beliebigen aktuellen Docker-Clients (Version 18.03.0 und höher).
Sie steuern den Zugriff auf eine Containerregistrierung mithilfe einer Azure-Identität, eines Dienstprinzipals in Microsoft Entra oder eines bereitgestellten Administratorkontos. Verwenden Sie die rollenbasierte Zugriffssteuerung von Azure (Role-Based Access Control, RBAC), um Benutzern oder Systemen bestimmte Registrierungsberechtigungen zuzuweisen.
Zu den Sicherheitsfeatures der Premium-Dienstebene zählen Inhaltsvertrauen für das Signieren von Imagetags und Firewalls und virtuelle Netzwerke (Vorschau), um den Zugriff auf die Registrierung einzuschränken. Microsoft Defender for Cloud wird optional mit Azure Container Registry integriert, um Images zu überprüfen, wenn Sie ein Image in eine Registrierung pushen.
Unterstützte Images und Artefakte: Wenn Images in einem Repository gruppiert sind, ist jedes Image eine schreibgeschützte Momentaufnahme eines mit Docker kompatiblen Containers. Azure-Containerregistrierungen können sowohl Windows- als auch Linux-Images enthalten. Sie steuern Imagenamen für alle Containerbereitstellungen.
Verwenden Sie Docker-Standardbefehle, um Images in ein Repository zu pushen oder ein Image aus einem Repository zu pullen. Zusätzlich zu den Dockercontainerimages speichert die Azure Container Registry zugehörige Inhaltsformate wie Helm-Diagramme und Images, die nach der Bildformatspezifikation Open Container Initiative (OCI) erstellt wurden.
Automatisierte Buildvorgänge für Images: Verwenden Sie Azure Container Registry-Tasks, um das Erstellen, Testen, Pushen und Bereitstellen von Images in Azure zu optimieren. Beispielsweise können Sie mit Azure Container Registry-Tasks Ihre Inner-Loop-Entwicklung auf die Cloud ausdehnen, indem Sie
docker build
-Vorgänge in Azure auslagern. Konfigurieren Sie Buildaufgaben, um die Pipeline für das Containerbetriebssystem- und Frameworkpatching zu automatisieren und automatisch Images zu erstellen, wenn das Team ein Commit für Code an die Quellcodeverwaltung ausführt.Mehrstufige Aufgaben bieten schrittbasierte Aufgabendefinition und -ausführung für Erstellen, Testen und Patchen von Containerimages in der Cloud. Taskschritte definieren einzelne Build- und Pushvorgänge für Containerimages. Sie können auch die Ausführung eines oder mehrerer Container definieren, in denen jeder Schritt einen Container als Ausführungsumgebung verwendet.