ECR에서 퍼블릭 Docker 이미지의 프라이빗 버전 생성

3092 단어 devopsawsdocker

왜 이러는 거지?



한 가지 이유는 Docker Hub의 무료 계층 속도 제한을 피하기 때문일 수 있습니다. 팀에서 무료 Docker Hub를 사용하는 경우 이미지를 AWS CodeBuild와 같은 것으로 가져오는 동안 속도 제한에 부딪힐 수 있습니다. 속도 제한은 익명인 경우 IP 주소당 6시간당 100회 풀로 설정되고 Docker ID가 있는 인증된 사용자의 경우 6시간당 200회 풀로 설정됩니다.

생성 과정



다음에 ECR 리포지토리를 생성할 수 있습니다.
ubuntu의 이미지를 저장합니다.

먼저 도커 이미지를 가져옵니다.

docker pull ubuntu:20.04


다음과 유사한 출력이 표시되어야 합니다.

그런 다음 소스 이미지를 참조하는 대상 이미지 태그를 만듭니다.

docker tag ubuntu:20.04 YOUR_AWS_ACCOUNT_ID.dkr.ecr.us-east-1.amazonaws.com/ecr-repository


ECR에 푸시하려면 먼저 다음을 인증해야 합니다.

aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin YOUR_AWS_ACCOUNT_ID.dkr.ecr.us-east-1.amazonaws.com


출력은 다음과 같아야 합니다.

그런 다음 이미지를 푸시합니다.

docker push YOUR_AWS_ACCOUNT_ID.dkr.ecr.us-east-1.amazonaws.com/ecr-repository


출력은 다음과 같아야 합니다.

AWS 콘솔에서 생성되었는지 확인할 수 있습니다.

대청소



필요하지 않은 리소스를 정리하는 것을 항상 기억하십시오.
먼저 이미지를 삭제합니다.

aws ecr batch-delete-image --repository-name ecr-repository --image-ids imageTag=latest



에서 CloudFormation 템플릿을 사용했다고 가정하고 다음을 실행하여 리포지토리를 삭제합니다.

aws cloudformation delete-stack --stack-name ecr-repository

좋은 웹페이지 즐겨찾기