기술 블로그
[TIL] Docker GCP CI/CD 본문
반응형
이전 게시글에 이어서 작성되는 글이다.
"CI/CD"란 "Continuous Integration"과 "Continuous Delivery" 또는 "Continuous Deployment"의 약어로, 소프트웨어 개발 및 배포 프로세스를 자동화하고 효율화하기 위한 방법론과 관련된 도구와 절차를 통칭합니다.
GCP내의 CI/CD를 검색해서 Cloud Build를 클릭한다.
사용을 클릭한다.
이후 트리거를 설정해주어야한다.
소스 선택에서 github을 선택한다.
연결 후 저장한다.
이후 설정창에 들어가 위 gcp서비스들을 사용 설정해준다.(쿠버네티스 제외)
cloudbuild.yaml 설정
#cloudbuild.yaml
steps:
# 1. Node.js 애플리케이션 빌드 단계
- name: 'gcr.io/cloud-builders/npm'
args: ['install']
- name: 'gcr.io/cloud-builders/npm'
args: ['run', 'build']
# 2. Docker 이미지 빌드 단계
- name: 'gcr.io/cloud-builders/docker'
args: ['build', '-t', 'gcr.io/ID/helloworld', '.']
# 3. Google Cloud Run 배포 단계
- name: 'gcr.io/cloud-builders/gcloud'
args:
- 'run'
- 'deploy'
- 'helloworld'
- '--image=gcr.io/ID/helloworld'
- '--project=ID'
- '--platform=managed'
- '--region=asia-northeast3' # 원하는 지역 설정
- '--allow-unauthenticated' # 필요한 경우 인증 생략
images: ['gcr.io/ID/helloworld']
위 코드는 우리가 이전에 수동으로 빌드 배포 했던 코드를 yaml 로 저장한 것이다.
gcloud builds submit --tag gcr.io/ID/helloworld --project ID
gcloud run deploy --image gcr.io/ID/helloworld --project ID --platform managed
해당 레포지토리에 commit push 이후
GCP CloudBuild 기록 칸에서 로그를 실시간으로 확인한다.
반응형
'프론트엔드' 카테고리의 다른 글
[TIL] 에러코드 (0) | 2023.10.20 |
---|---|
[TIL] 웹 브라우저 이해 (0) | 2023.10.17 |
[TIL] 모듈 번들러 (0) | 2023.10.15 |
[TIL] GCP Next.js deploy (0) | 2023.10.14 |
React 렌더링 최적화 (0) | 2023.09.30 |
Comments