Création d'une règle de cache d'extraction dans Amazon ECR - Amazon ECR

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création d'une règle de cache d'extraction dans Amazon ECR

Pour chaque registre en amont contenant des images que vous souhaitez mettre en cache dans votre registre ECR privé Amazon, vous devez créer une règle de cache d'extraction.

Pour les registres en amont qui nécessitent une authentification, vous devez stocker les informations d'identification dans un secret Secrets Manager. Vous pouvez utiliser un secret existant ou en créer un nouveau. Vous pouvez créer le secret Secrets Manager dans la ECR console Amazon ou dans la console Secrets Manager. Pour créer un secret Secrets Manager à l'aide de la console Secrets Manager au lieu de la ECR console Amazon, consultezStockage AWS Secrets Manager secret des informations d'identification de votre référentiel en amont.

Prérequis

  • Vérifiez que vous disposez des IAM autorisations appropriées pour créer des règles de cache d'extraction. Pour plus d’informations, veuillez consulter IAMautorisations requises pour synchroniser un registre en amont avec un registre ECR privé Amazon.

  • Pour les registres en amont qui nécessitent une authentification : si vous souhaitez utiliser un secret existant, vérifiez que le secret Secrets Manager répond aux exigences suivantes :

    • Le nom du secret commence parecr-pullthroughcache/. Affiche AWS Management Console uniquement les secrets de Secrets Manager avec le ecr-pullthroughcache/ préfixe.

    • Le compte et la région dans lesquels se trouve le secret doivent correspondre au compte et à la région dans lesquels se trouve la règle de cache d'extraction.

Pour créer une règle de mise en cache par extraction (AWS Management Console)

Les étapes suivantes montrent comment créer une règle de cache d'extraction et un secret Secrets Manager à l'aide de la ECR console Amazon. Pour créer un secret à l'aide de la console Secrets Manager, consultezStockage AWS Secrets Manager secret des informations d'identification de votre référentiel en amont.

  1. Ouvrez la ECR console Amazon à l'adresse https://console.aws.amazon.com/ecr/.

  2. Dans la barre de navigation, choisissez la région pour laquelle vous souhaitez configurer les paramètres de votre registre privé.

  3. Dans le panneau de navigation, choisissez Private registry (Registre privé), Pull through cache (Mise en cache par extraction).

  4. Sur la page Pull through cache configuration (Configuration de la mise en cache par extraction), cliquez sur Add rule (Ajouter une règle).

  5. À l'étape 1 : Spécifiez une page source, pour Registry, choisissez Amazon ECR Public, Kubernetes ou Quay dans la liste des registres en amont, puis choisissez Next.

  6. À l'étape 2 : Spécifiez une page de destination, pour le préfixe ECRdu référentiel Amazon, spécifiez le préfixe d'espace de noms du référentiel à utiliser lors de la mise en cache des images extraites du registre public source, puis choisissez Next. Par défaut, un espace de noms est renseigné mais un espace de noms personnalisé peut également être spécifié.

  7. Sur la page Étape 3 : Vérifier et créer, vérifiez la configuration de la règle de mise en cache par extraction, puis choisissez Créer.

  8. Répétez l'étape précédente pour chaque mise en cache par extraction que vous souhaitez créer. Les règles de mise en cache par extraction sont créées séparément pour chaque région.

  1. Ouvrez la ECR console Amazon à l'adresse https://console.aws.amazon.com/ecr/.

  2. Dans la barre de navigation, choisissez la région pour laquelle vous souhaitez configurer les paramètres de votre registre privé.

  3. Dans le panneau de navigation, choisissez Private registry (Registre privé), Pull through cache (Mise en cache par extraction).

  4. Sur la page Pull through cache configuration (Configuration de la mise en cache par extraction), cliquez sur Add rule (Ajouter une règle).

  5. Sur la page Étape 1 : Spécifier une source pour Registre, choisissez Docker Hub, Suivant.

  6. Sur la page Étape 2 : Configuration de l'authentification pour les Informations d'identification en amont, vous devez stocker vos informations d’identification pour Docker Hub dans un sectret AWS Secrets Manager . Vous pouvez spécifier un secret existant ou utiliser la ECR console Amazon pour en créer un nouveau.

    1. Pour utiliser un secret existant, choisissez Utiliser un AWS secret existant. Pour Nom du secret, utilisez le menu déroulant pour sélectionner votre secret existant, puis choisissez Suivant.

      Note

      Affiche AWS Management Console uniquement les secrets de Secrets Manager dont le nom utilise le ecr-pullthroughcache/ préfixe. Le secret doit également se trouver dans le même compte et dans la même région que ceux dans lesquels est créée la règle de mise en cache par extraction.

    2. Pour créer un nouveau secret, choisissez Créer un secret AWS , procédez comme suit, puis choisissez Suivant.

      1. Pour le Nom du secret, spécifiez un nom descriptif pour le secret. Les noms des secrets doivent contenir entre 1 et 512 caractères Unicode.

      2. Pour l'e-mail Docker Hub, spécifiez votre e-mail Docker Hub.

      3. Pour le Jeton d'accès Docker Hub, spécifiez votre jeton d'accès Docker Hub. Pour plus d'informations sur la création d'un jeton d'accès Docker Hub, consultez la section Création et gestion des jetons d'accès dans la documentation Docker.

  7. À l'étape 3 : Spécifiez une page de destination, pour le préfixe ECR du référentiel Amazon, spécifiez l'espace de noms du référentiel à utiliser lors de la mise en cache des images extraites du registre public source, puis choisissez Next.

    Par défaut, un espace de noms est renseigné mais un espace de noms personnalisé peut également être spécifié.

  8. Sur la page Étape 4 : Vérifier et créer, vérifiez la configuration de la règle de mise en cache par extraction, puis choisissez Créer.

  9. Répétez l'étape précédente pour chaque mise en cache par extraction que vous souhaitez créer. Les règles de mise en cache par extraction sont créées séparément pour chaque région.

  1. Ouvrez la ECR console Amazon à l'adresse https://console.aws.amazon.com/ecr/.

  2. Dans la barre de navigation, choisissez la région pour laquelle vous souhaitez configurer les paramètres de votre registre privé.

  3. Dans le panneau de navigation, choisissez Private registry (Registre privé), Pull through cache (Mise en cache par extraction).

  4. Sur la page Pull through cache configuration (Configuration de la mise en cache par extraction), cliquez sur Add rule (Ajouter une règle).

  5. À l'étape 1 : Spécifier une page source, pour Registry, choisissez GitHub Container Registry, Next.

  6. Sur la page Étape 2 : Configuration de l'authentification, pour les informations d'identification Upstream, vous devez enregistrer vos informations d'authentification pour GitHub Container Registry dans un AWS Secrets Manager secret. Vous pouvez spécifier un secret existant ou utiliser la ECR console Amazon pour en créer un nouveau.

    1. Pour utiliser un secret existant, choisissez Utiliser un AWS secret existant. Pour Nom du secret, utilisez le menu déroulant pour sélectionner votre secret existant, puis choisissez Suivant.

      Note

      Affiche AWS Management Console uniquement les secrets de Secrets Manager dont le nom utilise le ecr-pullthroughcache/ préfixe. Le secret doit également se trouver dans le même compte et dans la même région que ceux dans lesquels est créée la règle de mise en cache par extraction.

    2. Pour créer un nouveau secret, choisissez Créer un secret AWS , procédez comme suit, puis choisissez Suivant.

      1. Pour le Nom du secret, spécifiez un nom descriptif pour le secret. Les noms des secrets doivent contenir entre 1 et 512 caractères Unicode.

      2. Pour le nom d'utilisateur du registre des GitHub conteneurs, spécifiez votre nom d'utilisateur du registre des GitHub conteneurs.

      3. Pour le GitHub jeton d'accès au registre des GitHub conteneurs, spécifiez votre jeton d'accès au registre des conteneurs. Pour plus d'informations sur la création d'un jeton d' GitHub accès, consultez la section Gestion de vos jetons d'accès personnels dans la GitHub documentation.

  7. À l'étape 3 : Spécifiez une page de destination, pour le préfixe ECR du référentiel Amazon, spécifiez l'espace de noms du référentiel à utiliser lors de la mise en cache des images extraites du registre public source, puis choisissez Next.

    Par défaut, un espace de noms est renseigné mais un espace de noms personnalisé peut également être spécifié.

  8. Sur la page Étape 4 : Vérifier et créer, vérifiez la configuration de la règle de mise en cache par extraction, puis choisissez Créer.

  9. Répétez l'étape précédente pour chaque mise en cache par extraction que vous souhaitez créer. Les règles de mise en cache par extraction sont créées séparément pour chaque région.

  1. Ouvrez la ECR console Amazon à l'adresse https://console.aws.amazon.com/ecr/.

  2. Dans la barre de navigation, choisissez la région pour laquelle vous souhaitez configurer les paramètres de votre registre privé.

  3. Dans le panneau de navigation, choisissez Private registry (Registre privé), Pull through cache (Mise en cache par extraction).

  4. Sur la page Pull through cache configuration (Configuration de la mise en cache par extraction), cliquez sur Add rule (Ajouter une règle).

  5. Sur la page Étape 1 : Spécifier une source, procédez comme suit.

    1. Pour Registre, choisissez Microsoft Azure Container Registry

    2. Pour le registre source URL, spécifiez le nom de votre registre de conteneurs Microsoft Azure, puis choisissez Next.

      Important

      Il vous suffit de spécifier le préfixe, car le suffixe .azurecr.io est complété en votre nom.

  6. Sur la page Étape 2 : Configuration de l'authentification pour les Informations d'identification en amont, vous devez stocker vos informations d’identification pour Microsoft Azure Container Registry dans un sectret AWS Secrets Manager . Vous pouvez spécifier un secret existant ou utiliser la ECR console Amazon pour en créer un nouveau.

    1. Pour utiliser un secret existant, choisissez Utiliser un AWS secret existant. Pour Nom du secret, utilisez le menu déroulant pour sélectionner votre secret existant, puis choisissez Suivant.

      Note

      Affiche AWS Management Console uniquement les secrets de Secrets Manager dont le nom utilise le ecr-pullthroughcache/ préfixe. Le secret doit également se trouver dans le même compte et dans la même région que ceux dans lesquels est créée la règle de mise en cache par extraction.

    2. Pour créer un nouveau secret, choisissez Créer un secret AWS , procédez comme suit, puis choisissez Suivant.

      1. Pour le Nom du secret, spécifiez un nom descriptif pour le secret. Les noms des secrets doivent contenir entre 1 et 512 caractères Unicode.

      2. Pour le Nom d'utilisateur Microsoft Azure Container Registry, spécifiez votre nom d'utilisateur Microsoft Azure Container Registry.

      3. Pour le Jeton d'accès à Microsoft Azure Container Registry, spécifiez votre jeton d'accès à Microsoft Azure Container Registry. Pour plus d'informations sur la création d'un jeton d'accès à Microsoft Azure Container Registry, consultez la section Créer un jeton - portail dans la documentation Microsoft Azure.

  7. À l'étape 3 : Spécifiez une page de destination, pour le préfixe ECR du référentiel Amazon, spécifiez l'espace de noms du référentiel à utiliser lors de la mise en cache des images extraites du registre public source, puis choisissez Next.

    Par défaut, un espace de noms est renseigné mais un espace de noms personnalisé peut également être spécifié.

  8. Sur la page Étape 4 : Vérifier et créer, vérifiez la configuration de la règle de mise en cache par extraction, puis choisissez Créer.

  9. Répétez l'étape précédente pour chaque mise en cache par extraction que vous souhaitez créer. Les règles de mise en cache par extraction sont créées séparément pour chaque région.

  1. Ouvrez la ECR console Amazon à l'adresse https://console.aws.amazon.com/ecr/.

  2. Dans la barre de navigation, choisissez la région pour laquelle vous souhaitez configurer les paramètres de votre registre privé.

  3. Dans le panneau de navigation, choisissez Private registry (Registre privé), Pull through cache (Mise en cache par extraction).

  4. Sur la page Pull through cache configuration (Configuration de la mise en cache par extraction), cliquez sur Add rule (Ajouter une règle).

  5. À l'étape 1 : Spécifier une page source, pour Registry, choisissez GitLab Container Registry, Next.

  6. Sur la page Étape 2 : Configuration de l'authentification, pour les informations d'identification Upstream, vous devez enregistrer vos informations d'authentification pour GitLab Container Registry dans un AWS Secrets Manager secret. Vous pouvez spécifier un secret existant ou utiliser la ECR console Amazon pour en créer un nouveau.

    1. Pour utiliser un secret existant, choisissez Utiliser un AWS secret existant. Pour Nom du secret, utilisez le menu déroulant pour sélectionner votre secret existant, puis choisissez Suivant. Pour plus d'informations sur la création d'un secret Secrets Manager à l'aide de la console Secrets Manager, consultez Stockage AWS Secrets Manager secret des informations d'identification de votre référentiel en amont.

      Note

      Affiche AWS Management Console uniquement les secrets de Secrets Manager dont le nom utilise le ecr-pullthroughcache/ préfixe. Le secret doit également se trouver dans le même compte et dans la même région que ceux dans lesquels est créée la règle de mise en cache par extraction.

    2. Pour créer un nouveau secret, choisissez Créer un secret AWS , procédez comme suit, puis choisissez Suivant.

      1. Pour le Nom du secret, spécifiez un nom descriptif pour le secret. Les noms des secrets doivent contenir entre 1 et 512 caractères Unicode.

      2. Pour le nom d'utilisateur du registre des GitLab conteneurs, spécifiez votre nom d'utilisateur du registre des GitLab conteneurs.

      3. Pour le GitLab jeton d'accès au registre des GitLab conteneurs, spécifiez votre jeton d'accès au registre des conteneurs. Pour plus d'informations sur la création d'un jeton d'accès au registre des GitLab conteneurs, voir Jetons d'accès personnels, jetons d'accès de groupe ou jetons d'accès au projet dans la GitLab documentation.

  7. À l'étape 3 : Spécifiez une page de destination, pour le préfixe ECR du référentiel Amazon, spécifiez l'espace de noms du référentiel à utiliser lors de la mise en cache des images extraites du registre public source, puis choisissez Next.

    Par défaut, un espace de noms est renseigné mais un espace de noms personnalisé peut également être spécifié.

  8. Sur la page Étape 4 : Vérifier et créer, vérifiez la configuration de la règle de mise en cache par extraction, puis choisissez Créer.

  9. Répétez l'étape précédente pour chaque mise en cache par extraction que vous souhaitez créer. Les règles de mise en cache par extraction sont créées séparément pour chaque région.

Pour créer une règle de mise en cache par extraction (AWS CLI)

Utilisez la AWS CLI commande create-pull-through-cache-rule pour créer une règle de cache d'extraction pour un registre ECR privé Amazon. Pour de registres en amont qui nécessitent une authentification, vous devez stocker les informations d'identification dans un secret Secrets Manager. Pour créer un secret à l'aide de la console Secrets Manager, consultezStockage AWS Secrets Manager secret des informations d'identification de votre référentiel en amont.

Les exemples suivants sont fournis pour chaque registre en amont pris en charge.

L'exemple suivant crée une règle de cache d'extraction pour le registre Amazon ECR Public. Il spécifie un préfixe de référentiel de ecr-public, ce qui fait que chaque référentiel créé à l'aide de la règle de mise en cache par extraction aura le schéma de dénomination de ecr-public/upstream-repository-name.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix ecr-public \ --upstream-registry-url public.ecr.aws \ --region us-east-2

L'exemple suivant crée une règle de mise en cache par extraction pour le registre public Kubernetes. Il spécifie un préfixe de référentiel de kubernetes, ce qui fait que chaque référentiel créé à l'aide de la règle de mise en cache par extraction aura le schéma de dénomination de kubernetes/upstream-repository-name.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix kubernetes \ --upstream-registry-url registry.k8s.io \ --region us-east-2

L'exemple suivant crée une règle de mise en cache par extraction pour le registre public Quay. Il spécifie un préfixe de référentiel de quay, ce qui fait que chaque référentiel créé à l'aide de la règle de mise en cache par extraction aura le schéma de dénomination de quay/upstream-repository-name.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix quay \ --upstream-registry-url quay.io \ --region us-east-2

L'exemple suivant crée une règle de mise en cache par extraction pour le registre Docker Hub. Il spécifie un préfixe de référentiel de docker-hub, ce qui fait que chaque référentiel créé à l'aide de la règle de mise en cache par extraction aura le schéma de dénomination de docker-hub/upstream-repository-name. Vous devez spécifier le nom complet de la ressource Amazon (ARN) du secret contenant vos informations d'identification Docker Hub.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix docker-hub \ --upstream-registry-url registry-1.docker.io \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

L'exemple suivant crée une règle de cache d'extraction pour le registre des GitHub conteneurs. Il spécifie un préfixe de référentiel de docker-hub, ce qui fait que chaque référentiel créé à l'aide de la règle de mise en cache par extraction aura le schéma de dénomination de github/upstream-repository-name. Vous devez spécifier le nom complet de la ressource Amazon (ARN) du secret contenant vos informations d'identification du registre des GitHub conteneurs.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix github \ --upstream-registry-url ghcr.io \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

L'exemple suivant crée une règle de cache d'extraction pour le Microsoft Azure Container Registry. Il spécifie un préfixe de référentiel de azure, ce qui fait que chaque référentiel créé à l'aide de la règle de mise en cache par extraction aura le schéma de dénomination de azure/upstream-repository-name. Vous devez spécifier le nom complet de la ressource Amazon (ARN) du secret contenant vos informations d'identification Microsoft Azure Container Registry.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix azure \ --upstream-registry-url myregistry.azurecr.io \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

L'exemple suivant crée une règle de cache d'extraction pour le registre des GitLab conteneurs. Il spécifie un préfixe de référentiel de gitlab, ce qui fait que chaque référentiel créé à l'aide de la règle de mise en cache par extraction aura le schéma de dénomination de gitlab/upstream-repository-name. Vous devez spécifier le nom complet de la ressource Amazon (ARN) du secret contenant vos informations d'identification du registre des GitLab conteneurs.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix gitlab \ --upstream-registry-url registry.gitlab.com \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

Étapes suivantes

Après avoir créé vos règles de cache d'extraction, les étapes suivantes sont les suivantes :