Spring

[SpringBoot] AWS CI/CD 구성하기

iheeeee6-6 2023. 2. 14. 18:25
728x90

githubActions, AWS EC2, RDS, IAM, S3, CodeDeploy 로 CI/CD 구성을 해보았다.

Travis CI를 사용하다가 유료로 변경되어 아래의 링크를 참고하여 githubActions로 진행하였다!

설명을 자세하게 적어두셔서 따라하기 수월했다!

https://github.com/jojoldu/freelec-springboot2-webservice/issues/806

 

[정보] p.320 ~ 367 CodeDeploy 유료화로 변경되어 GitHubAction으로 변경해 보았습니다. · Issue #806 · jojold

기존에 올라온 질문이 아닌지 먼저 검색해주세요! 가장 자주 나온 제보 P.105 @PutMapping("/api/v1/posts") P.111 Posts.update 어떤 오류인가요? 오류설명: CodeDeploy 유료화로 GitHubAction으로 무료 변경 Github URL:

github.com

 

출처:https://github.com/jojoldu/freelec-springboot2-webservice/issues/806

구성은 위의 그림과 같다.

githubActions로 jar 파일을 aws s3에 전달하고,  codeDeploy에 배포 요청한 후 해당 jar 파일을 ~/app/step2/zip 파일에 업로드하여 배포 시킨다. 이때 업데이트된 jar로 자동 배포되기 위해 scripts 폴더 하위에 deploy.sh를 작성하여 배포 자동화를 구성한다.

 

1) gihubActions 성공 화면

2) codeDeploy 배포 내역

3) ec2 jar 확인

 

4) ec2 자동 배포된  pid 확인

 

 

ci cd 구성을 통해 순식간에 테스트 -빌드- 배포까지 이루어지는 것이 신세계였다.. 

개발자 입장에서는 정말 편리한 구성으로, 요즘 여러 기업에서 cicd를 왜 사용하는지 알 것 같다.!