CannotPullContainer erreurs de tâche dans Amazon ECS - Amazon Elastic Container Service

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.

CannotPullContainer erreurs de tâche dans Amazon ECS

Les erreurs suivantes indiquent que la tâche n'a pas pu démarrer car Amazon ECS ne parvient pas à récupérer l'image de conteneur spécifiée.

Note

La version 1.4 de la plateforme Fargate tronque les messages d'erreur longs.

La tâche ne peut pas extraire l'image. Vérifiez que le rôle dispose des autorisations nécessaires pour extraire des images du registre

Cette erreur indique que la tâche ne peut pas extraire l'image spécifiée dans la définition de la tâche en raison de problèmes d'autorisation. Des informations supplémentaires figurent dans le message d'erreur qui fournit l'image ou le rôle à l'origine du problème.

« Réponse d'erreur du démon : l'accès au pull refusé pour le dépôt n'existe pas ou peut nécessiter une « connexion docker » : refusé : utilisateur : ROLearn n'est pas autorisé à effectuer : ecr : BatchGetImage on resource : image car aucune politique basée sur l'identité n'autorise l'action ecr :. » BatchGetImage

Pour résoudre ce problème :

  1. Vérifiez que l'image existe dans l'irepository. Pour plus d'informations sur l'affichage de vos images, consultez la section Affichage des détails des images dans Amazon ECR dans le guide de l'utilisateur d'Amazon Elastic Container Registry.

  2. Vérifiez que le role-arn dispose des autorisations appropriées pour extraire l'image.

    Pour plus d'informations sur l'affichage et la modification des rôles, consultez la section Modification d'un rôle dans le guide AWS Identity and Access Management d'utilisation.

    La tâche utilise l'un des rôles suivants :

La tâche ne peut pas extraire l'image. Vérifiez la configuration de votre réseau

Cette erreur indique que la tâche ne peut pas se connecter à Amazon ECR.

Pour plus d'informations sur la façon de vérifier et de résoudre le problème, consultezVérification de l'arrêt de la connectivité des tâches par Amazon ECS.

Erreur API (500) : Get https://111122223333.dkr.ecr.us-east-1.amazonaws.com/v2/ : net/http : demande annulée en attendant la connexion

Cette erreur indique qu'une connexion a expiré, car il n'existe aucune route vers Internet.

Pour résoudre ce problème, vous pouvez :

  • Pour des tâches de sous-réseaux publics, spécifiez ENABLED (Activé) pour Auto-assign public IP (Attribuer automatiquement l'adresse IP publique) lors du lancement de la tâche. Pour plus d’informations, consultez Exécution d'une application en tant que tâche Amazon ECS.

  • Pour des tâches de sous-réseaux privés, spécifiez Désactivé pour Attribuer automatiquement l'adresse IP publique lors du lancement de la tâche, puis configurez une passerelle NAT dans votre VPC pour acheminer les demandes vers Internet. Pour plus d'informations, consultez Passerelles NAT dans le Guide de l'utilisateur Amazon VPC.

Erreur d'API

Cette erreur indique qu'il existe un problème de connexion avec le point de terminaison Amazon ECR.

Pour plus d'informations sur la manière de résoudre ce problème, consultez l'article Comment puis-je résoudre l'erreur Amazon ECR « CannotPull ContainerError : erreur d'API » dans Amazon ECS sur le AWS Support site Web.

écrivez /var/lib/docker/tmp/ Blob111111111 GetImage : il ne reste plus d'espace sur l'appareil

Cette erreur indique que l'espace disque est insuffisant.

Pour résoudre ce problème, vous devez libérer de l'espace disque.

Si vous utilisez l'AMI optimisée pour Amazon ECS, vous pouvez utiliser la commande suivante pour récupérer les 20 fichiers les plus volumineux de votre système de fichiers :

du -Sh / | sort -rh | head -20

Exemple de sortie :

5.7G    /var/lib/docker/containers/50501b5f4cbf90b406e0ca60bf4e6d4ec8f773a6c1d2b451ed8e0195418ad0d2
1.2G    /var/log/ecs
594M    /var/lib/docker/devicemapper/mnt/c8e3010e36ce4c089bf286a623699f5233097ca126ebd5a700af023a5127633d/rootfs/data/logs
...

Dans certains cas, le volume racine peut être rempli par un conteneur en cours d'exécution. Si le conteneur utilise le pilote de journal json-file par défaut sans limite max-size, le fichier journal est peut-être responsable de la plupart de l'utilisation de cet espace. Vous pouvez utiliser la commande docker ps pour vérifier quel conteneur utilise l'espace en mappant le nom du répertoire dans la sortie ci-dessus à l'ID de conteneur. Par exemple :

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 50501b5f4cbf amazon/amazon-ecs-agent:latest "/agent" 4 days ago Up 4 days ecs-agent

Par défaut, lorsque vous utilisez le pilote de journal json-file, Docker capture la sortie standard (et l'erreur standard) de tous vos conteneurs et les écrit dans les fichiers au format JSON. Vous pouvez définir l'option max-size comme une option de pilote de journal, ce qui empêche le fichier journal d'occuper trop d'espace. Pour plus d'informations, consultez Configurer des pilotes de journalisation dans la documentation Docker.

Voici un extrait de définition de conteneur illustrant la manière d'utiliser cette option :

{ "log-driver": "json-file", "log-opts": { "max-size": "256m" } }

Si les journaux de vos conteneurs occupent trop d'espace disque, vous pouvez également utiliser le pilote de awslogs journal. Le pilote de awslogs journal envoie les journaux à CloudWatch, ce qui libère de l'espace disque qui serait autrement utilisé pour vos journaux de conteneur sur l'instance de conteneur. Pour plus d’informations, consultez Envoyez les journaux Amazon ECS à CloudWatch .

ERREUR : toomanyrequests : trop de demandes ou vous avez atteint votre limite de taux d'extraction.

Cette erreur indique qu'il existe une limite de débit pour Docker Hub.

Si vous recevez un message pour l'une des erreurs suivantes, vous êtes probablement en train d'atteindre les limites de débit Docker Hub :

Pour en savoir plus sur les limites de débit Docker Hub, consultez Understanding Docker Hub rate limiting.

Si vous avez augmenté la limite de débit de Docker Hub et que vous devez authentifier vos extractions Docker pour vos instances de conteneur, consultez Authentification de registre privé pour les instances de conteneur.

Réponse d'erreur du démon : Get url : net/http : demande annulée en attendant la connexion

Cette erreur indique qu'une connexion a expiré, car il n'existe aucune route vers Internet.

Pour résoudre ce problème, vous pouvez :

  • Pour des tâches de sous-réseaux publics, spécifiez ENABLED (Activé) pour Auto-assign public IP (Attribuer automatiquement l'adresse IP publique) lors du lancement de la tâche. Pour plus d’informations, consultez Exécution d'une application en tant que tâche Amazon ECS.

  • Pour des tâches de sous-réseaux privés, spécifiez Désactivé pour Attribuer automatiquement l'adresse IP publique lors du lancement de la tâche, puis configurez une passerelle NAT dans votre VPC pour acheminer les demandes vers Internet. Pour plus d'informations, consultez Passerelles NAT dans le Guide de l'utilisateur Amazon VPC.

ref pull a été réessayé 1 fois : échec de la copie : échec de l'ouverture httpReaderSeeker : code d'état inattendu

Cette erreur indique qu'un échec s'est produit lors de la copie d'une image.

Pour résoudre ce problème, consultez l'un des articles suivants :

accès au pull refusé

Cette erreur indique qu'il n'est pas possible d'accéder à l'image.

Pour résoudre ce problème, vous devrez peut-être authentifier votre client Docker auprès d'Amazon ECR. Pour plus d'informations, consultez la section Authentification du registre privé dans le guide de l'utilisateur Amazon ECR.

échec de la commande pull : panique : erreur d'exécution : adresse mémoire non valide ou déréférencement du pointeur nul

Cette erreur indique qu'il n'est pas possible d'accéder à l'image en raison d'une adresse mémoire non valide ou d'un déréférencement nul du pointeur.

Pour résoudre ce problème :

  • Vérifiez que vous disposez des règles du groupe de sécurité pour accéder à Amazon S3.

  • Lorsque vous utilisez des points de terminaison de passerelle, vous devez ajouter une route dans la table de routage pour accéder au point de terminaison.

erreur lors de l'extraction de l'image conf/erreur lors de l'extraction de l'image configuration

Cette erreur indique qu'une limite de débit a été atteinte ou qu'il y a une erreur réseau :

Pour résoudre ce problème, consultez Comment puis-je résoudre l'erreur « CannotPull ContainerError » dans ma tâche de type de lancement Amazon ECS EC2.

Contexte annulé

Cette erreur indique que le contexte a été annulé.

La cause courante de cette erreur est que le VPC utilisé par votre tâche n'a pas de route pour extraire l'image d'Amazon ECR.