관리 메뉴

JeongMin-dev

[AWS] Spring Boot + GitActions + CodeDeploy CI/CD 자동배포 1 본문

Server/AWS

[AWS] Spring Boot + GitActions + CodeDeploy CI/CD 자동배포 1

클딧 2023. 8. 31. 16:28
Spring Boot + GitActions + CodeDeploy 이용하여 CI/CD 자동배포 구현하기!

 

https://velog.io/@bluewind8791/Github-Actions

 

프로젝트를 구축할 때마다 일일이 찾아보면서 CI/CD를 구축하는 게 불편하여 정리하여 글을 올려봅니다. 

 

기본적으로 EC2 생성과 프로젝트 생성은 되어있다는 가정하게 작성합니다.

 

구현환경
  • EC2(Amazone Linux)
  • RDS(MySQL)
  • AWS S3
  • AWS IAM
  • AWS CodeDeploy
  • Spring Boot (2.7.9)

 

구현흐름
  1. 깃허브 브렌치 (master) 등등 설정한 브렌치에 Push를 하게 되면 GitActions이 실행되어 CI (빌드) 작업이 실행됩니다.
  2. 빌드 작업을 통해 jar파일이 zip 형식으로 압축되고 S3에 업로드됩니다.
  3. EC2에 설치된 CodeDeploy Agent가 S3에 업로드된 zip 파일을 가져와 배포를 진행합니다.
  4. CodeDeploy Agent는 zip의 .yml 파일을 읽어서 설정된 스크립트를 실행합니다.

 

목차

   1. GitHub Actions 설정

   2. S3 버킷 설정

   3. AWS IAM 사용자 설정

   4. CodeDeploy 애플리케이션 설정

   5. EC2 IAM 역할 수정


깃 Actions 설정

레포지토리 접근 후 우측 상단에 Actions을 클릭합니다.

 

중간에 Java with Gradle 박스 안 Configure 클릭

 

클릭하게 되면 기본 세팅이 위의 사진과 같이 되어있을 텐데 

추후에 수정 예정이니 일단 그대로 커밋합니다.


S3 설정

AWS Management Console (콘솔) 에 접속하여 S3 검색 S3 페이지 이동 후

우측 상단에 버킷만들기 버튼 클릭

 

버킷이름에 중복되지않는 이름을 지정하고 나머지 옵션들은 그대로 두고 버킷을 만듭니다.

 


[AWS] Spring Boot + GitActions + CodeDeploy CI/CD 자동배포 2