[AWS] Jenkins + ECR + ECS [2]

pjh·2025년 6월 28일

AWS

목록 보기
4/7

ECR 리포지토리 생성

💥 사전준비
1. Jenkins, docker, aws-cli 설치
2. docker에 이미지 올린 상태
3. AWS IAM 자격증명 설정

AWS CLI로 리포지토리 생성하기

콘솔에서 제공하는 GUI로 쉽게 할 수 있다

aws ecr create-repository \
  --repository-name [리포지토리 이름] \
  --region ap-northeast-2 

위 명령어를 터미널에서 실행하면 ECR이 생성된다.

...
    "repository": {
    ...
        "repositoryUri": [리포지토리 Uri],
    ...
    }
...

repositoryUri 가 Docker가 push할 대상

# ECR 로그인
aws ecr get-login-password --region ap-northeast-2 \
| docker login \
--username AWS \
--password-stdin [계정ID].dkr.ecr.ap-northeast-2.amazonaws.com
Login Succeeded
Logging in with your password grants your terminal complete access to your account. 
For better security, log in with a limited-privilege personal access token. Learn more at https://docs.docker.com/go/access-tokens/

👆 위 말이 나오면 성공

jenkins 설정 해주고 빌드시키면 (이건 따로 포스팅 예정)

jenkins 로그

AWS ECR 이미지 등록

이젠 이 ECR에 등록된 이미지를 ECS로 컨테이너 관리를 할 것이다.


# 로컬
aws configure

aws ecr get-login-password --region ap-northeast-2 \
| docker login \
--username AWS \
--password-stdin [계정ID].dkr.ecr.ap-northeast-2.amazonaws.com

docker tag api-app:latest [계정ID].dkr.ecr.ap-northeast-2.amazonaws.com/api-app:latest
docker push [계정ID].dkr.ecr.ap-northeast-2.amazonaws.com/api-app:latest

# 환경변수 설정 후 도커 run
docker run -d -p 8080:8080 \
-e SPRING_DATASOURCE_URL=jdbc:mysql.xxxxxxxx.ap-northeast-2.rds.amazonaws.com
-e SPRING_DATASOURCE_USERNAME=[username] \
-e SPRING_DATASOURCE_PASSWORD=[password] \
[계정ID].dkr.ecr.ap-northeast-2.amazonaws.com/my-app:latest

0개의 댓글