Transmission d'une image multi-architecture vers un référentiel privé 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.

Transmission d'une image multi-architecture vers un référentiel privé Amazon ECR

Vous pouvez transférer des images multi-architectures vers un référentiel Amazon ECR en créant et en diffusant des listes de manifestes Docker. Une liste manifeste est une liste d'images créée en spécifiant un ou plusieurs noms d'image. Dans la plupart des cas, la liste des manifestes est créée à partir d'images ayant la même fonction mais correspondant à des systèmes d'exploitation ou à des architectures différents. La liste manifeste n'est pas obligatoire. Pour en savoir plus, consultez manifeste docker.

Une liste manifeste peut être extraite ou référencée dans une définition de tâche Amazon ECS ou dans une spécification de pod Amazon EKS, comme d'autres images Amazon ECR.

Prérequis

Transmettre une image Docker multi-architecture vers un référentiel Amazon ECR
  1. Authentifiez le client Docker auprès du registre Amazon ECR dans lequel vous prévoyez de transmettre votre image. Vous devez obtenir des jetons d'authentification pour chaque registre utilisé ; les jetons sont valides pendant 12 heures. Pour plus d’informations, consultez Authentification du registre privé dans Amazon ECR.

    Pour authentifier Docker dans un registre Amazon ECR, exécutez la commande aws ecr get-login-password. Lorsque vous passez le jeton d'authentification à la commande docker login, utilisez la valeur AWS pour le nom d'utilisateur et spécifiez l'URI de registre Amazon ECR auquel vous souhaitez vous authentifier. Si vous vous authentifiez sur plusieurs registres, vous devrez répéter la commande pour chacun d'eux.

    Important

    Si vous recevez une erreur, installez la dernière version de la CLI ou effectuez une mise à niveau vers cette version AWS CLI. Pour en savoir plus, consultez Installer la AWS Command Line Interface dans le guide de l'utilisateur AWS Command Line Interface .

    aws ecr get-login-password --region region | docker login --username AWS --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com
  2. Répertoriez les images de votre référentiel, en confirmant les balises d'image.

    aws ecr describe-images --repository-name my-repository
  3. Créez la liste manifeste Docker. La commande manifest create vérifie que les images référencées se trouvent déjà dans votre référentiel et crée le manifeste localement.

    docker manifest create aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository:image_one_tag aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository:image_two
  4. (Facultatif) Vérifiez la liste manifeste Docker. Cela vous permet de confirmer la taille et le résumé de chaque manifeste d'image référencé dans la liste manifeste.

    docker manifest inspect aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository
  5. Transmettez la liste manifeste Docker à votre référentiel Amazon ECR.

    docker manifest push aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository