카테고리 없음
[AWS] EC2에서 docker hub에 올라간 image ECR에 올리기
오늘 하루s
2024. 9. 4. 00:00
728x90
ECR 리포지토리 생성하기
EC2에서 ECR 인증을 위해 IAM 사용자 생성하기
IAM 사용자가 없다면 사용자를 생성해준다.
권한 정책에 AmazonEC2ContainerRegistryPowerUser 이 권한을 추가해준다.
권한이 추가 되었다.
IAM 사용자에 Access key 생성하기
accesskey 와 secret access key는 추후에 다시 볼 수 없으니 기록해두거나 .csv파일로 저장해둔다.
ec2 인스턴스에서 ECR 로그인
mkdir -p ~/.aws
nano ~/.aws/credentials
터미널에서 ~/.aws/credentials 파일을 열어 편집한다.
[default]
aws_access_key_id = YOUR_ACCESS_KEY_ID
aws_secret_access_key = YOUR_SECRET_ACCESS_KEY
위에서 생성한 accesskey와 secret accesskey를 넣어 파일을 생성한다.
파일을 저장하려면 Ctrl + O, 파일명을 확인하고 Enter, 그리고 Ctrl + X를 눌러 편집기를 종료해주면 된다.
Docker hub 이미지 ECR 올리기
ec2에서 docker hub에 접속해준다.
docker login
로그인 완료 후 이미지를 Pull해준다.
docker pull <username>/<repository>
ecr 리포지토리를 선택하고 푸시 명령 보기를 선택해준다.
첫번째 명령어를 입력해준다.
aws ecr get-login-password --region <리전> | docker login --username AWS --password-stdin <어카운트_아이디>.dkr.ecr.<리전>.amazonaws.com
도커 허브에 이미지 빌드가 되어있어 다음 명령을 통해 태그를 지정해 ecr 리포지토리에 푸시할 수 있다.
docker tag test:latest <어카운트아이디>.dkr.ecr.ap-northeast-2.amazonaws.com/<리포지토리이름>:latest
다음 명령을 통해 이 이미지를 새로 생성한 AWS 리포지토리로 푸시한다.
docker push <어카운트아이디>.dkr.ecr.ap-northeast-2.amazonaws.com/<리포지토리이름>:latest
ECR에 이미지가 잘 올라간 것을 확인 할 수 있다.
728x90