Cloud Build는 Google Cloud에서 빌드를 실행하는 서비스입니다.
Cloud Build는 다양한 저장소 또는 Cloud Storage 공간에서 소스 코드를 가져오고, 사양에 맞게 빌드를 실행하고, Docker 컨테이너 또는 자바 아카이브와 같은 아티팩트를 생성할 수 있습니다.
빌드 구성 및 빌드 단계
수행할 작업에 대한 지침을 Cloud Build에 제공하는 빌드 구성을 작성할 수 있습니다. 종속 항목을 가져오고, 단위 테스트, 정적 분석, 통합 테스트를 실행하고, docker, gradle, maven, bazel, gulp와 같은 빌드 도구로 아티팩트를 만들도록 빌드를 구성할 수 있습니다.
Cloud Build는 빌드를 일련의 빌드 단계로 실행합니다. 각 빌드 단계는 Docker 컨테이너에서 실행됩니다. 빌드 단계를 실행하는 것은 스크립트에서 명령을 실행하는 것과 유사합니다.
Cloud Build에서 제공하는 빌드 단계와 Cloud Build 커뮤니티를 사용하거나 커스텀 빌드 단계를 직접 작성할 수 있습니다.
Cloud Build에서 제공한 빌드 단계: Cloud Build는 일반적인 언어 및 작업에 지원되는 오픈소스 빌드 단계 모음을 게시했습니다.
커뮤니티에서 제공한 빌드 단계: Cloud Build 사용자 커뮤니티는 오픈소스 빌드 단계를 제공했습니다.
커스텀 빌드 단계: 빌드에 사용할 자체 빌드 단계를 생성할 수 있습니다.
각 빌드 단계는 cloudbuild
라는 로컬 Docker 네트워크에 연결된 컨테이너를 사용하여 실행됩니다. 따라서 빌드 단계가 서로 통신하고 데이터를 공유할 수 있습니다.
Cloud Build에서 Ubuntu 및 Gradle 같은 표준 Docker Hub 이미지를 사용할 수 있습니다.
빌드 시작하기
Cloud Build에서 Google Cloud CLI 또는 Cloud Build API를 사용하거나 Cloud Build의 빌드 트리거 기능을 이용해 빌드를 수동으로 시작하여, 코드가 변경되면 새 빌드를 시작하는 자동화된 지속적 통합/지속적 배포(CI/CD) 워크플로를 만들 수 있습니다.
Cloud Source Repositories, GitHub, Bitbucket을 비롯한 여러 코드 저장소와 빌드 트리거를 통합할 수 있습니다.
빌드 결과 보기
빌드 결과는 gcloud CLI 또는 Cloud Build API를 사용하거나, Cloud Build가 실행하는 각 빌드의 세부 정보와 로그를 표시하는, Cloud Console의 Cloud Build 섹션에 있는 빌드 기록 페이지를 사용하여 볼 수 있습니다. 자세한 내용은 빌드 결과 보기를 참조하세요.
빌드의 작동 방식
다음 단계에서는 Cloud Build 빌드의 수명 주기를 대략적으로 설명합니다.
- 애플리케이션 코드와 필요한 애셋을 준비합니다.
- Cloud Build에 대한 지침이 포함된 YAML 또는 JSON 형식의 빌드 구성 파일을 만듭니다.
- Cloud Build에 빌드를 제출합니다.
- Cloud Build는 사용자가 제공한 빌드 구성을 기반으로 빌드를 실행합니다.
- 해당하는 경우 빌드된 아티팩트가 Artifact Registry에 푸시됩니다.
Docker
Cloud Build는 Docker를 사용하여 빌드를 실행합니다. 각 빌드 단계에서 Cloud Build는 docker run
의 인스턴스로 Docker 컨테이너를 실행합니다. 현재 Cloud Build는 Docker 엔진 버전 19.03.8을 실행합니다.
Cloud Build 인터페이스
Google Cloud Console, gcloud
명령줄 도구 또는 Cloud Build의 REST API로 Cloud Build를 사용할 수 있습니다.
Cloud Console에서는 빌드 기록 페이지에서 Cloud Build 빌드 결과를 보고, 빌드 트리거에서 빌드를 자동화할 수 있습니다.
gcloud CLI를 사용하여 빌드를 만들고 관리할 수 있습니다. 명령어를 실행하여 빌드 제출, 빌드 나열, 빌드 취소 같은 작업을 수행할 수 있습니다.
Cloud Build REST API를 사용하여 빌드를 요청할 수 있습니다.
다른 Cloud Platform API와 마찬가지로 OAuth2를 사용하여 액세스 권한을 부여해야 합니다. 액세스 권한을 부여한 후에는 API를 사용하여 새 빌드를 시작하고, 빌드 상태 및 세부 정보를 볼 수 있으며, 프로젝트당 빌드 목록을 나열하고, 현재 진행 중인 빌드를 취소할 수 있습니다.
자세한 내용은 API 문서를 참조하세요.
로컬에서 빌드 실행
Cloud Build에 제출하기 전에 빌드를 테스트하려면 cloud-build-local
도구를 사용하여 빌드를 로컬에서 실행하면 됩니다. 이 도구를 사용하는 방법에 대한 자세한 내용은 로컬로 빌드 및 디버깅 페이지를 참조하세요.
다음 단계
- Docker 빠른 시작을 읽으면서 Cloud Build를 사용하여 Docker 이미지를 빌드하는 방법 알아보기.
- Cloud Build에서 아티팩트를 빌드, 테스트, 배포하는 방법 알아보기
- 여러 유형의 Cloud Build 트리거에 대해 알아보기
- DevOps 관련 리소스를 읽고 연구 프로그램을 살펴보세요.