Comment résoudre l'erreur « Image does not exist » (l'image n'existe pas) lorsque le lancement de mes tâches échoue dans le cluster Amazon ECS ?

Dernière mise à jour : 13/07/2022

Le service Amazon Elastic Container Service (Amazon ECS) ne parvient pas à démarrer des tâches dans le cluster Amazon ECS. Je reçois alors un message d'erreur similaire à ce qui suit : « CannotPullContainerError: Error response from daemon: manifest for 1234567890.dkr.ecr.us-east-1.amazonaws.com/test:curlnginx1234 not found. » (CannotPullContainerError : Erreur de réponse de démon : manifeste pour 1234567890.dkr.ecr.us-east-1.amazonaws.com/test:curlnginx1234 introuvable). Comme puis-je résoudre cette erreur ?

Brève description

Résolution

1.    Vérifiez que l'image est déclarée dans votre définition de tâche Amazon ECS.

2.    Vérifiez que l'image Docker existe dans le référentiel Amazon ECR.

Remarque : pour afficher les informations relatives au référentiel, vous pouvez utiliser la console Amazon ECR ou exécuter les commandes suivantes :

Pour vérifier si une image existe dans un référentiel ECR, exécutez la commande list-images suivante :

aws ecr list-images --repository-name "hello-world"  --region us-east-1

Pour filtrer les images dans un référentiel ECR, exécutez la commande describe-images suivante :

aws ecr describe-images --repository-name "hello-world" --region us-east-1 --query 'sort_by(imageDetails,& imagePushedAt)[*]'

Remarque : n'oubliez pas de mettre à jour vos commandes avec le nom de votre référentiel ECR et la région AWS.

3.    Utilisez l'URI complet de l'image lorsque vous spécifiez une image Amazon ECR dans votre définition de tâche.

Important : vérifiez qu'il n'y a pas d'espace superflu ajouté au début ou à la fin de l'URI spécifié pour l'image.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?