반응형
배포 자동화를 구축할 수 있는 툴에는 여러가지가 존재하지만 이번 실습에서는 AWS 이용하고자 한다.
먼저 작성한 로컬 환경에 소스코드가 있다는 가정하에 시작할 것이다.
#실습 전 비어있는 S3 버킷을 하나 생성한다.
1. 소소크드가 작성된 로컬 환경의 최상위 디렉토리에 buildspec.yml 작성
##buildspec.yml
version: 0.2
phases: #필수 시퀀스, 빌드를 수행하면서 실행할 각 단계를 기입
pre_build: #build단계 이전 실행되어야하는 부분
commands:
- cd client
- npm install
build:
commands:
- npm run build
artifacts: #build의 출력 결과물의 위치 또는 S3에 출력 버킷에 업로드하기 위한 방법에 대한 정보
files:
- '**/*' #모든 파일을 재귀적으로 나타냄
base-directory: client/build
2. CodePipeline 구성
AWS 에서 CodePipeline 검색 후 파이프라인 생성
다음에서 소스 공급자 Github(버전2) 선택 후
Github 연결 > 자유롭게 연결 이름 설정 > 새 앱 설치 > github 계정 연결 > repo 선택 후 완성된 앱 선택
빌드 스테이지 추가
빌드 프로젝트 생성에서 이름은 자유롭게 작성
이미지 별 이용가능한 런타임이 다르기 때문에 선택 시 레퍼런스를 참고할 수 있다.
S3 버킷이 많아지면 과금 위험이 있기 때문에 CloudWatch 기능을 이용하여 출력 로그를 저장할 수 있다. (리소스 분산)
소스단계에 OutputArtifactFormat 이 ZIP 으로 되어 있기 때문에 압축 풀기를 선택해준다.
↑ 모두 작업을 순차적으로 수행했다면 볼 수 있는 결과 ↑
#만약 에러를 만났다면 아래를 검색 후 참고하여 해결가능
1. CodeBuild
2. Cloudwatch
반응형
'DevOps > AWS' 카테고리의 다른 글
배포 자동화 - 환경 변수 설정 (0) | 2023.01.16 |
---|---|
서버 배포 자동화 (0) | 2023.01.16 |
AWS 클라우드 서비스 (0) | 2023.01.16 |
서버 배포 자동화 - 트러블 슈팅 (1) | 2023.01.13 |
클라이언트 배포 자동화 - 트러블 슈팅 (0) | 2023.01.13 |