작성자 : 김혜진
<aside> 🎯
PR 생성 및 CI
(Continuous Integration):
PR 생성: 새로운 브랜치에서 작업 후, main 브랜치로 병합하기 위해 PR을 생성
pull_request 이벤트: PR을 생성하면 pull_request 이벤트가 트리거되어 워크플로우 실행됨
워크플로우 실행 (CI
): 워크플로우가 실행되고 코드가 빌드 및 테스트됨. 변경된 코드가 기존 코드와 통합되는지 확인하는 과정이 진행됨
→ 이 단계가 CI임
PR 머지 및 CD
(Continuous Deployment/Delivery):
PR 머지: PR이 승인되면, 이를 main 브랜치에 병합(Merge)
push 이벤트: PR이 머지되면서 main 브랜치에 코드가 푸시되면 push 이벤트가 트리거되어 워크플로우 실행됨
워크플로우 실행 (CD): 워크플로우가 다시 실행되고 코드가 빌드 및 배포됨. 이 단계에서 코드가 배포 환경에 배포됨
→ 이를 CD라고 함
</aside>
<aside> 💡
CI
: push -> Build & Test
CD
: AWS를 연결 후 배포 자동화
</aside>
EC2에 Docker 설치
GPG 키 추가
curl -fsSL <https://download.docker.com/linux/ubuntu/gpg> | sudo apt-key add -
Docker 저장소 추가
sudo add-apt-repository "deb [arch=amd64] <https://download.docker.com/linux/ubuntu> $(lsb_release -cs) stable"
패키지 목록 업데이트
sudo apt-get update -y
Docker 설치
sudo apt-get install docker-ce docker-ce-cli containerd.io -y
Docker 서비스 시작
sudo systemctl start docker
Docker가 부팅 시 자동으로 시작되도록 설정
sudo systemctl enable docker
현재 사용자가 Docker 명령어를 사용할 수 있도록 설정
sudo usermod -aG docker ${USER
설치 확인
Docker가 제대로 설치되었는지 확인하려면
docker --version
정상적으로 설치되었다면 Docker의 버전이 출력됨
간단한 테스트
Docker가 잘 작동하는지 확인하기 위해 hello-world
이미지를 실행해보세요
docker run hello-world
Docker 설치했으나 아래와 같은 오류가 뜨는 경우
Local에 Docker 설치 - 필요없음
Docker Image로 만들 Spring Boot 프로젝트
Docker Hub 회원가입 (계정 필요!)
깃허브에서 자동으로 추천을 해줌