도입 배경예전에 Spring boot를 공부하며 만들었었던 암호화폐 모의투자 개인 프로젝트는 배포를 수동으로 진행 중이다. 프로젝트에 수정이 있을 때마다 빌드 & 배포 과정을 수동으로 진행하는 것에 시간이 지속적으로 투자된다. 이 과정을 자동화하여 빌드 & 배포에 소요되는 시간을 줄여서 효율적으로 개발할 수 있도록 개선해 보자. 기존 배포 방식빌드부터 배포까지 직접 수동으로 진행. 프로젝트가 잦은 수정이 있다면 이 과정을 계속 반복해야 한다. 비효율적이라고 할 수 있다.로컬 IntelliJ 에서 개발github 레포지토리에 push오라클 클라우드(Ubuntu) ssh 접속레포지토리 git clone 후 gradle 사용하여 직접 빌드빌드 후 jar 파일 -> Dockerfile 기반으로 도커 이미지 생성..
github actions
spring boot 프로젝트를 github actions, docker를 활용하여 EC2에 배포하는 과정을 담았다. AWS EC2 인스턴스 생성(Ubuntu 22.04), EC2에 docker설치, Docker hub 계정이 있다는 가정하에 진행한다. 기존 배포 방법의 문제점 기존에 CI/CD 를 구축하지 않고 배포를 진행할 때, 우리는 spring boot 프로젝트를 직접 build 해서 jar 파일을 EC2에 Filezila 등으로 옮기고, java -jar 명령어를 실행하여 프로젝트를 실행했다. 프로젝트를 진행하면서 코드의 수정이 빈번하게 일어날 텐데, 매번 이런 과정을 거치는 것은 매우 비효율 적이다. CI/CD를 구축해 두면 이 과정을 자동화할 수 있어 개발 생산성을 높일 수 있다. Githu..