AWS CLI 설치
설치 가이드 링크
AWS CLI 접속 설정
- configure 과정을 거치만 .aws 폴더에 접속을 위해 필요한 정보가 config, credentials 파일에 저장된다.
- configure 과정을 거칠 때 access_key와 secret_access_key 값을 입력해야 하는데 이전 포스트에서 사용자 생성 시 확인 할 수 있다.
$ aws configure # default profile 생성
$ aws configure --profile dev # dev profile 생성
Amazon ECR Docker Credential Helper 설치
$ brew install docker-credential-helper-ecr
Spring Boot build.gradle 설정
- JIB 플러그인을 사용해서 스프링부트 프로젝트에서 별다른 과정 없이 ECR에 바로 업로드한다.
jib {
from {
image = "adoptopenjdk/openjdk11:alpine"
}
to {
image = "[AWS 리포지토리 URI]"
credHelper = 'ecr-login'
tags = ['latest', "${project.name}-" + System.currentTimeMillis()]
}
container {
creationTime = "USE_CURRENT_TIMESTAMP"
// Set JVM options.
jvmFlags = ['-Dspring.profiles.active=prod', '-XX:+UseContainerSupport', '-Dserver.port=8080', '-XX:+DisableExplicitGC', '-Dfile.encoding=UTF-8']
// Expose different port.
ports = ['8080', '8092']
// Add labels.
user = "nobody:nogroup"
}
}
이미지 ECR로 업로드
$ ./gradlew clean jib -x test