CI,CD 3

[CI/CD] Github Actions로 CI/CD 파이프라인 구축하기 with Docker hub

환경 세팅1. Dockerfile에 아래 스크립트가 포함되어 있는지 확인 (COPY 명령어는 호스트 머신의 파일이나 디렉토리를 도커 이미지의 파일 시스템에 복사함. 이 명령어를 사용하여 애플리케이션 파일, 설정 파일, 기타 필요한 파일을 도커 이미지에 포함시킨다.)// 도커파일이 프로젝트 루트 디렉토리에 있다고 가정COPY ./build/libs/--SNAPSHOT.jar app.jar2. 깃허브에서 개발용 브랜치와 배포용 브랜치 나누기 (생략해도 됨)3. 도커 허브 회원가입4. EC2 인스턴스 ssh 접속   1. Github Actions 생성1. 깃허브에서 자신의 레포지토리의 Actions로 진입  2. workflow 작성하기 (Java with Gradle 을 선택하거나 set up a work..

CI,CD 2024.08.08

[CI/CD] SpringBoot 프로젝트 Docker+EC2 서버에 배포

CI/CD의 개념을 알게된 후 개인적으로 프로젝트를 진행하더라도 자동화 환경을 구축하는 것은 좋은 경험이 될 것 같아 CI/CD 파이프라인 구축을 해보려고 한다. 도커와 AWS EC2를 사용하여 진행하였다.2024.07.30 - [백엔드 TIL] - [Docker] 도커란? 도커파일(Docker File) 개념과 작성법2024.08.08 - [네트워크] - [AWS] EC2 인스턴스 생성하기 + ssh 접속개발 환경Mac OS (M2 pro)GradleSpringBoot 3.3.2DockerAWS EC2 1. SpringBoot 프로젝트를 도커 이미지로 만들기먼저, 프로젝트를 빌드하여 JAR파일을 만든다. JAR파일은 자바 애플리케이션, 라이브러리 파일을 배포하고 실행하는데 사용되는 압축파일이라고 보면 ..

CI,CD 2024.08.08

[CI/CD] CI, CD란? (Continuous Integration, Continuous Deployment)

1. CI (Continuous Integration)CI는 지속적인 통합을 의미한다. 예를 들어 개발자가 기능을 개발하거나 버그를 수정하고 발생한 코드의 변경을 main 레포에 push 또는 PR을 하는 것을 말한다. 이런 과정은 매우 빈번하기 때문에 개발 생산성을 향상시킬 필요가 있다. 따라서 우리는 CI 도구를 사용하여 코드 변경이 main 저장소에 푸시될 때마다 자동으로 빌드와 테스트가 실행되도록 설정할 수 있다. (CI/CD 툴로는 Jenkins, Gitlab, Travis CI, GIthub Actions 등이 있다.)  2. CD (Continuous Deployment )앞서 말한 변경사항을 프로덕션 환경에 실제 배포할 때 까지의 과정을 자동화하는 것이다.일일이 빌드와 테스트를 진행하고 배..

CI,CD 2024.08.08