Effectuer la transition depuis Container Registry

Artifact Registry est le service recommandé pour le stockage et la gestion des images de conteneurs sur Google Cloud. En tant que service entièrement géré compatible avec les images de conteneurs et les artefacts non issus de conteneurs, Artifact Registry étend les fonctionnalités de Container Registry.

Si vous utilisez actuellement Container Registry, consultez les informations de cette page pour en savoir plus sur la transition vers Artifact Registry. Bien que Container Registry soit toujours disponible et accepté en tant qu'API Google Enterprise, les nouvelles fonctionnalités ne seront disponibles que dans Artifact Registry. Container Registry ne recevra que les correctifs de sécurité critiques.

Présentation

Artifact Registry fournit les mêmes fonctionnalités de gestion des conteneurs que Container Registry et inclut des fonctionnalités et des avantages supplémentaires:

Formats supplémentaires
En plus des images de conteneurs, vous pouvez stocker et gérer les formats suivants :
  • Charts Helm
  • Packages Java, Node.js et Python
  • Packages Linux Debian et RPM
Dépôts régionaux
Container Registry ne fournit que des hôtes de registre multirégionaux. Artifact Registry fournit des hôtes de registre régionaux et multirégionaux.
Plusieurs dépôts distincts dans un seul emplacement
Dans Container Registry, vous ne pouvez créer qu'un seul hôte de registre dans un emplacement multirégional, et tous les dépôts du registre partagent le même bucket de stockage. Dans Artifact Registry, chaque dépôt est une ressource distincte. Vous pouvez appliquer différents libellés et stratégies de gestion de l'authentification et des accès à chaque dépôt.
Autorisations au niveau du dépôt
Dans Container Registry, vous accordez des autorisations pour chaque hôte de registre multirégional. Vous ne pouvez pas appliquer des autorisations distinctes au niveau du dépôt. Artifact Registry propose un contrôle d'accès au niveau du dépôt.
Rôles IAM dans Artifact Registry
Dans Container Registry, vous utilisez les rôles Cloud Storage pour contrôler l'accès et vous devez transférer une image vers un hôte de registre avant de pouvoir configurer les autorisations pour l'hôte. Dans Artifact Registry, vous utilisez les rôles Artifact Registry pour accorder l'accès, et il existe une séparation claire entre les rôles d'administrateur du dépôt et d'utilisateur du dépôt.

Rétrocompatibilité et coexistence

Vous pouvez utiliser Artifact Registry et Container Registry dans le même projet. Lorsque vous affichez une liste de dépôts avec gcloud ou Cloud Console, Artifact Registry répertorie également les dépôts Container Registry dans le même projet.

Pour profiter des fonctionnalités étendues d'Artifact Registry, vous pouvez migrer vos conteneurs et votre automatisation vers Artifact Registry.

Options de transition

Vous pouvez passer à Artifact Registry à l'aide de l'une de ces options:

Dépôts standards (recommandé)
Dépôts Artifact Registry standards qui acceptent toutes les fonctionnalités et sont entièrement indépendants de tous les hôtes Container Registry existants.
Dépôts compatibles avec gcr.io (version alpha)

Dépôts spéciaux mappés avec les noms d'hôte gcr.io de Container Registry. Ces dépôts acceptent:

  • Commandes gcloud container images
  • Redirection du trafic depuis des noms d'hôte gcr.io vers les dépôts gcr.io correspondants dans votre projet.

Ces dépôts présentent certaines limites de fonctionnalités. Toutefois, si vous disposez d'une grande quantité de configurations d'outils, de scripts ou de code avec des références gcr.io, une approche plus tactique peut être nécessaire pour passer à Artifact Registry.

Ces deux types de dépôts peuvent coexister afin que vous puissiez effectuer une transition progressive. Exemple :

  • Vous pouvez créer des dépôts gcr.io dans Artifact Registry pour migrer votre configuration Container Registry existante et créer des dépôts standards pour de nouveaux travaux.
  • Vous pouvez adopter une approche en plusieurs étapes pour votre transition. Migrez vers les dépôts gcr.io dans Artifact Registry, puis passez progressivement aux dépôts standards lorsque vous mettez à jour votre automatisation pour assurer la compatibilité complète avec le dépôt et les chemins d'images Artifact Registry.

Configurer les dépôts

Dans Artifact Registry, vous devez créer des dépôts avant de pouvoir y transférer des images. Un élément clé du passage à Artifact Registry consiste à configurer des dépôts Artifact Registry et à les intégrer à votre automatisation CI/CD.

Pour plus de flexibilité, la représentation des dépôts par Artifact Registry a été modifiée.

Container Registry

Chaque emplacement multirégional est associé à un seul bucket de stockage. L'organisation de vos images dans des dépôts sous un nom d'hôte est facultative. Prenons l'exemple suivant qui montre l'image webapp dans trois emplacements :

us.gcr.io/my-project/webapp
us.gcr.io/my-project/team1/webapp
us.gcr.io/my-project/team2/webapp

Les dépôts ne constituent qu'un mécanisme d'organisation et ne limitent pas l'accès. Tout utilisateur ayant accès au bucket de stockage pour us.gcr.io dans ce projet peut accéder à toutes les versions de l'image de conteneur webapp.

Artifact Registry

Chaque dépôt est une ressource distincte de votre projet. Comme chaque dépôt est une ressource unique, vous pouvez :

  • Attribuer un nom, une description et des libellés à chaque dépôt
  • Créer plusieurs dépôts au même emplacement
  • Configurer des autorisations spécifiques au dépôt

En outre, l'emplacement d'un dépôt peut être une région ou un emplacement multirégional.

Ces modifications vous donnent plus de contrôle sur vos dépôts. Par exemple, si vous avez des équipes à São Paulo et Sydney, vous pouvez créer un dépôt pour chaque équipe dans la région la plus proche géographiquement de l'emplacement multirégional le plus proche.

southamerica-east1-docker.pkg.dev/my-project/team1/webapp
australia-southeast1-docker.pkg.dev/my-project/team2/webapp

Vous pouvez ensuite accorder à chaque équipe des autorisations sur leur dépôt d'équipe uniquement.

Consultez le guide de configuration pour obtenir des instructions sur la transition vers Artifact Registry.

Transférer et extraire des images

Pour vous aider à adapter la configuration, les commandes et la documentation existantes pour Container Registry, les informations suivantes comparent la création, le transfert, l'extraction et le déploiement d'images.

Comparatif des fonctionnalités

Cette section récapitule les modifications et les améliorations apportées aux fonctionnalités de Container Registry.

Caractéristique Container Registry Artifact Registry
Formats compatibles Images de conteneurs uniquement Plusieurs formats d'artefacts, y compris les images de conteneurs, les packages de langages et les packages du système d'exploitation.
Dépôts
  • Création : crée automatiquement un dépôt dans un emplacement multirégional si vous n'y avez pas encore transféré d'image.
  • Emplacement : dépôts multirégionaux uniquement.
  • Organisation : tous les dépôts situés sur le même hôte multirégional d'un projet Google Cloud partagent un seul bucket de stockage.
  • Contrôle des accès : accordez des autorisations au niveau du projet ou sur le bucket de stockage pour chaque hôte multirégional.
  • Création : vous devez créer un dépôt avant d'y transférer des images.
  • Emplacement : créez des dépôts standards dans une zone multirégionale ou régionale. Par exemple, l'emplacement multirégional le plus proche pour l'Australie est l'Asie. Avec l'assistance régionale, vous pouvez créer un dépôt dans le centre de données de Sydney.
  • Organisation : vous pouvez créer plusieurs dépôts distincts dans chaque région ou emplacement multirégional. Appliquez des libellés pour les regrouper par équipe, étape de développement ou autres catégories.
  • Contrôle des accès : accordez des autorisations sur le projet ou sur des dépôts individuels.
Noms d'hôte Les hôtes se trouvent sur le domaine gcr.io. Les hôtes se trouvent sur le domaine pkg.dev. Pour en savoir plus sur le format du nom, consultez la section Noms des dépôts et des artefacts.

Vous pouvez utiliserCompatibilité avec le domaine gcr.io pour rediriger automatiquement le trafic de votre sitegcr.io> aux hôtes des dépôts Artifact Registry correspondants dans le même projet.

Autorisations
  • Accordez l'accès à l'aide des autorisations Cloud Storage.
  • Vous pouvez limiter l'accès à toutes les images stockées dans un emplacement multirégional, mais pas dans des dépôts individuels. Par exemple, vous pouvez limiter l'accès à us.gcr.io dans le projet my-project, mais vous ne pouvez pas accorder d'autorisations spécifiques pour les images sous us.gcr.io/my-project/team1 et us.gcr.io/my-project/team2.
  • Accordez l'accès à l'aide des autorisations Artifact Registry.
  • Vous pouvez restreindre l'accès à des dépôts individuels. Par exemple, vous pouvez contrôler séparément l'accès aux images dans us-docker.pkg.dev/my-project/team1 et us-docker.pkg.dev/my-project/team2.
Authentification Fournit plusieurs méthodes d'authentification pour stocker et extraire des images avec un client tiers. Artifact Registry est compatible avec les mêmes méthodes d'authentification que Container Registry. Consultez la page Configurer l'authentification pour Docker pour en savoir plus.

Si vous utilisez l'assistant d'identification Docker :

  • La version 2.0.0 ou ultérieure est requise.
  • Les versions du client Docker antérieures à la version 18.03 ne sont plus compatibles.
  • Vous devez ajouter les emplacements Artifact Registry que vous utiliserez à la configuration de l'assistant d'identification.
Clés de chiffrement gérées par le client (CMEK) Utilisez CMEK pour chiffrer les buckets de stockage contenant vos images. Chiffrez des dépôts individuels avec le chiffrement CMEK
Utiliser Google Cloud Console Affichez et gérez les images Container Registry dans la section Container Registry de Cloud Console. Affichez la liste de vos dépôts Artifact Registry et Container Registry dans la section Artifact Registry de Cloud Console. Gérez vos dépôts et images Artifact Registry à partir de cette page.

Si vous cliquez sur un dépôt Container Registry, vous êtes redirigé vers la liste des images dans la section Container Registry de Cloud Console.

Utiliser les commandes d'API et gcloud Utilise les commandes gcloud container images. Les commandes sont compatibles avec les condensés condensés. Si vous ne spécifiez pas la chaîne de condensé complète, Container Registry tente de localiser l'image appropriée en fonction de la chaîne partielle. Utilise des commandes gcloud artifacts docker. Les commandes ne sont pas compatibles avec les condensés abrégés.

Pour obtenir une comparaison des commandes gcloud de Container Registry et d'Artifact Registry, consultez la comparaison des commandes gcloud.

Artifact Registry inclut également une API permettant de gérer les dépôts et les artefacts dans tous les formats.

Notifications Pub/Sub Publie les modifications apportées au sujet gcr Publie les modifications apportées au sujet gcr Si vous créez des dépôts dans le même projet que votre service Container Registry existant, votre configuration Pub/Sub existante fonctionne automatiquement.

Pour en savoir plus, consultez la section Configurer les notifications Pub/Sub.

Images Docker Hub mises en cache Met en cache les images Docker Hub les plus demandées sur mirror.gcr.io. mirror.gcr.io continue de mettre en cache les images fréquemment demandées de Docker Hub.
VPC Service Controls Vous pouvez ajouter Container Registry à un périmètre de service. Vous pouvez ajouter Artifact Registry à un périmètre de service.
Stockage et analyse de métadonnées Container Analysis permet de stocker des métadonnées, d'analyser les failles et d'intégrer les services qui utilisent ces métadonnées, commel'autorisation binaire. Les commandes du SDK Cloud permettant d'utiliser des notes et des occurrences se trouvent dans le groupe gcloud container images. Container Analysis est compatible avec le stockage des métadonnées et l'analyse des failles pour les images de conteneurs dans Artifact Registry et Container Registry.
  • Les deux produits utilisent les mêmes API Container Analysis. Lorsque vous activez les API Container Analysis dans Container Registry ou Artifact Registry, elles sont activées pour les deux produits.
  • Les deux produits utilisent les mêmes sujets Pub/Sub pour les notifications Container Analysis. Vos abonnements existants incluront des notifications pour Artifact Registry et Container Registry.
  • Les commandes du SDK Cloud permettant d'utiliser des notes et des occurrences se trouvent sous le groupe gcloud artifacts docker.
Images fournies par Google Les images fournies par Google sont hébergées sur gcr.io. Voici quelques exemples : Les images fournies par Google restent disponibles sur gcr.io.
Tarif Les tarifs de Container Registry sont basés sur l'utilisation de Cloud Storage, y compris le stockage et la sortie réseau. Artifact Registry possède sa propre tarification, basée sur le stockage et la sortie réseau.