Amazon Elastic Container Service(Amazon ECS) 서비스가 클러스터에서 작업을 시작하지 못하고 "CannotPullContainerError: Error response from daemon: manifest for 1234567890.dkr.ecr.us-east-1.amazonaws.com/test:curlnginx1234 not found." 오류가 발생합니다.
간략한 설명
Amazon Elastic Container Registry(Amazon ECR) 프라이빗 리포지토리에서 이미지를 가져올 때 이 오류가 발생합니다.
이 오류 메시지를 받지 않은 경우, 문제나 오류 메시지에 대해 다음 해결 방법 중 하나를 선택하십시오.
- 애플리케이션 문제 또는 리소스 제약으로 인해 컨테이너가 종료됩니다. 이 문제를 해결하려면 컨테이너가 종료될 때 Amazon ECS 작업이 중단되거나 시작되지 않는 문제를 해결하려면 어떻게 해야 합니까?를 참조하십시오.
- Application Load Balancer의 상태 확인이 실패했습니다. 이 문제를 해결하려면 Amazon EC2 시작 유형을 사용하는 Amazon ECS 작업이 Application Load Balancer 상태 확인을 통과하도록 하려면 어떻게 해야 합니까?를 참조하십시오.
- Docker가 컨테이너 이미지를 가져올 수 없습니다. 이 문제를 해결하려면 Amazon ECS의 CannotPullContainer 작업 오류를 참조하십시오.
- "[AWS service] was unable to place a task because no container instance met all of its requirements"와 비슷한 오류 메시지가 표시됩니다. 이 문제를 해결하려면 Amazon ECS에서 오류를 해결하려면 어떻게 해야 합니까?"[AWS service] was unable to place a task because no container instance met all of its requirements"를 참조하십시오.
- "[AWS service] was unable to place a task because no container instance met all of its requirements. The closest matching container-instance container-instance-id has insufficient CPU units available"과 비슷한 오류 메시지가 표시됩니다. 이 문제를 해결하려면 Amazon ECS에서 오류를 해결하려면 어떻게 해야 합니까?"the closest matching container-instance container-instance-id has insufficient CPU units available"를 참조하십시오.
- 다음과 비슷한 오류 메시지가 표시됩니다. "[AWS service] was unable to place a task because no container instance met all of its requirements. The closest matching container-instance container-instance-id encountered error "AGENT](https://repost.aws/ko/knowledge-center/ecs-container-instance-agent-error)the closest matching container-instance container-instance-id encountered error 'AGENT'" error for my service in Amazon ECS?". To resolve this issue, see [How do I resolve "
참고: Amazon ECS 서비스 문제를 해결하려면 서비스 이벤트 로그에서 진단 정보를 확인하십시오.
해결 방법
참고: AWS Command Line Interface(AWS CLI) 명령 실행 시 오류가 발생하는 경우, AWS CLI 오류 문제 해결을 참고하세요. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.
**이미지가 존재하지 않음 ** 오류를 해결하려면 다음 단계를 완료하십시오.
- 이미지가 Amazon ECS 작업 정의에 선언되어 있는지 확인합니다. 자세한 내용은 이미지를 참조하십시오.
- Docker 이미지가 Amazon ECR 리포지토리에 있는지 확인합니다. 자세한 내용은 Amazon ECR에서 이미지 세부 정보 보기를 참조하십시오. 리포지토리 정보를 보려면 Amazon ECR 콘솔을 사용합니다. 또는 다음 명령을 실행합니다.
이미지가 ECR 리포지토리에 있는지 확인하려면 list-images 명령을 실행합니다.
aws ecr list-images --repository-name "hello-world" --region us-east-1
ECR 리포지토리의 이미지를 필터링하려면 describe-images 명령을 실행합니다.
aws ecr describe-images --repository-name "hello-world" --region us-east-1 --query 'sort_by(imageDetails,& imagePushedAt)[*]'
참고: repository-name과 region을 해당 값으로 바꿉니다.
- 작업 정의에 Amazon ECR 이미지를 지정합니다. 이미지에 전체 URI를 사용합니다. 자세한 내용은 Amazon ECR 이미지 및 작업 정의 IAM 역할을 참조하십시오.
중요: 이미지의 URI에서 앞이나 뒤에 공백이 없는지 확인합니다.
관련 정보
Amazon ECR의 프라이빗 이미지