본문 바로가기
프로그래밍/CS

CI/CD

by 숙님 2022. 8. 8.
728x90

배포 자동화 파이프라인(Pipeline)

- 정의: 소스 코드의 관리~실제 서비스 배포 과정을 연결하는 구조 

 

- 단계 

1. Source: 소스 코드에 변경이 있을 경우, 감지하고 다음 단계로 전달하는 작업 수행

2. Build: source단계에서 전달받은 코드를 컴파일, 빌드, 테스트하여 가공 

3. Deploy: build단계에서 전달받은 결과물을 실제 서비스에 반영 

 

- 배포 자동화가 필요한 이유

1. 시간 절약

2. 휴먼 에러(Human Error)방지 

 

CI(continuous integration)/CD(continuous deployment)

 

- 정의

CI는 지속적 통합의 약자로, 팀 구성원이 각자의 작업을 자주 통합하는 소프트웨어 개발 방식

CD는 지속적 통합 과정이 끝나면 고객에게 배포하는 것을 말함 

 

- 단계

CI

1. code: 개발자가 코드를 코드 저장소에 push

2. build: 코드 저장소로부터 코드를 가져와서 빌드 

3. test: 코드 빌드의 결과물이 다른 컴포넌트와 잘 통합되는지 확인 

CD

1. release: 어떤 기능을 넣을지, 배포할지  말지 결정하는 단계  

2. deploy: 실제 배포 

3. operation: 배포된 소프트웨어를 실제 운용하는 과정 

 

Vercel로 클라이언트 CI/CD 구축 배포 

1. 깃허브 홈페이지에 새로운 레포지토리를 만듦

2. 레포지토리 생성 시 pubulic으로 해야 Github action을 무료로 이용 가능 

3. 새로운 레포지토리에 코드를 push 

# 기존 레퍼런스 클론
git clone git@github.com:{가져오는 레퍼런스 이름}.git

# 디렉터리 이동
cd {가져오는 레퍼런스 이름}

# 새로운 리포지토리를 원격 리포지토리로 등록
git remote add myRepo git@github.com:{아이디}/{새로운 리포지토리 이름}.git

# 기존 레퍼런스 코드를 새로운 리포지토리로 push
git push myRepo reference

 

4. push확인, 커밋 기록에 주황색 원 모양이 뜸 

5. Actions탭에 들어가서 확인 

6. Vercel 홈페이지 들어가서 로그인하기

 

Develop. Preview. Ship. For the best frontend teams – Vercel

Deploy web projects with the best frontend developer experience and highest end-user performance.

vercel.com

7. 우측 중간의 'New Project'클릭하기 

8. 깃허브와 연동하여 레포지토리 빌드 및 Deploy 실행

*Vercel이 EC2와 같은 인스턴스를 따로 실행시켜, 빌드 및 배포를 자동으로 진행

'프로그래밍 > CS' 카테고리의 다른 글

[CS] 컴퓨터의 구성  (0) 2022.09.02
기술면접 대비(JavaScript, React, 운영체제, 자료구조)  (0) 2022.08.18
Lighthouse  (0) 2022.08.04
반응형 웹, CSS 애니메이션  (0) 2022.07.22
HTML/CSS 심화  (0) 2022.07.22

댓글