Gemini CLI 및 CI/CD 기술로 애플리케이션 배포

1. 소개

이 Codelab에서는 Gemini CLICI/CD 확장 프로그램 을 사용하여 플랫폼 엔지니어링을 위한 '제로에서 히어로' 워크플로를 경험합니다. Spring Petclinic 데모 또는 Python Flask 앱과 같은 애플리케이션을 빌드하고 이제 Google Cloud에 배포하여 공유하려는 엔터프라이즈 개발자의 역할을 맡게 됩니다.

복잡한 파이프라인을 수동으로 구성하는 대신 자연어를 사용하여 Gemini를 안내합니다. 에이전트는 프로젝트를 분석하고 Google Cloud Run과 같은 소규모 타겟 런타임을 제안하며, 유출된 보안 비밀에 대한 보안 검사를 실행하고 배포를 처리하여 작동하는 URL을 제공합니다.

실습할 내용

  • 저장소를 클론합니다 (자체 저장소 또는 Spring Petclinic과 같은 데모 앱을 사용할 수 있음).
  • Gemini CLICI/CD 확장 프로그램 을 설치하고 구성합니다.
  • deploy my application과 같은 프롬프트를 사용하여 배포 기능을 트리거합니다.
  • Gemini가 프로젝트를 분석하고 Cloud Run을 제안하며 보안 검사를 실행하고 애플리케이션을 배포하는 것을 확인합니다.
  • 실행 중인 애플리케이션을 확인합니다.

필요한 항목

  • 웹브라우저(예: Chrome)
  • 결제가 사용 설정된 Google Cloud 프로젝트.

이 Codelab은 초보자를 포함한 모든 수준의 개발자를 대상으로 합니다.

2. 시작하기 전에

결제 설정

Google Cloud 프로젝트 만들기 또는 선택

Google Cloud 프로젝트 만들기

  1. Google Cloud 콘솔의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.
  2. Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다. 프로젝트에 결제가 사용 설정되어 있는지 확인하는 방법을 알아보세요.

Cloud Shell 시작

Cloud Shell 은 Google Cloud에서 실행되는 명령줄 환경으로, 필요한 도구가 미리 로드되어 있습니다.

  1. Google Cloud 콘솔 상단에서 Cloud Shell 활성화 를 클릭합니다.
  2. Cloud Shell에 연결되면 인증을 확인합니다.
    gcloud auth list
    
  3. 프로젝트가 구성되었는지 확인합니다.
    gcloud config get project
    
  4. 프로젝트가 예상대로 설정되지 않은 경우 설정합니다.
    export PROJECT_ID=<YOUR_PROJECT_ID>
    gcloud config set project $PROJECT_ID
    

API 사용 설정

Cloud Shell에서 이 명령어를 실행하여 이 실습에 필요한 모든 API를 사용 설정합니다.

gcloud services enable \
  cloudbuild.googleapis.com \
  run.googleapis.com \
  artifactregistry.googleapis.com

3. Gemini CLI 설정

이 단계에서는 Gemini CLI 및 CI/CD 확장 프로그램을 설치하고 구성합니다.

  1. Gemini CLI가 설치되어 있는지 확인합니다. 아직 설치하지 않았다면 Gemini CLI 시작하기 가이드의 안내를 따르세요.
  2. 로그인: Google 계정으로 로그인하는 것이 좋습니다. 자세한 내용은 인증 가이드를 참조하세요.
  3. CI/CD 확장 프로그램 설치: 다음 명령어를 실행하여 GitHub에서 확장 프로그램을 설치합니다.
    gemini extensions install https://github.com/gemini-cli-extensions/cicd
    
    설치된 확장 프로그램을 나열하여 확장 프로그램 설치를 확인할 수 있습니다.
    gemini extensions list
    
  4. 애플리케이션 기본 사용자 인증 정보 (ADC) 구성: CI/CD 확장 프로그램을 사용하려면 ADC를 구성해야 합니다. 다음을 실행합니다.
    gcloud auth login
    gcloud auth application-default login
    
  5. 기본 프로젝트 및 리전 설정: ADC의 기본 프로젝트 및 할당량 프로젝트로 gcloud를 구성하는 것이 좋습니다. 을 실제 값 (예: my-project)으로 바꿉니다.
    gcloud config set project <PROJECT_ID>
    gcloud auth application-default set-quota-project <PROJECT_ID>
    

4. 애플리케이션 배포

이제 Gemini CLI 및 CI/CD 확장 프로그램을 사용하여 애플리케이션을 배포할 수 있습니다.

저장소 복제

이 실습에서는 인기 있는 Spring Petclinic 샘플 애플리케이션을 사용합니다. 지원되는 런타임 (예: Python/Flask, Java/Spring Boot 등)을 사용하는 애플리케이션이 준비되어 있는 경우 자체 애플리케이션을 사용할 수도 있습니다.

  1. 저장소를 클론하고 디렉터리로 이동합니다.
    git clone https://github.com/spring-projects/spring-petclinic.git
    cd spring-petclinic
    

Gemini에 배포 프롬프트 입력

  1. 프로젝트 디렉터리에서 Gemini CLI를 실행합니다.
    gemini
    
  2. Gemini CLI 셸 내에서 CI/CD 확장 프로그램을 사용하여 애플리케이션을 배포합니다. 간단한 자연어 프롬프트를 사용할 수 있습니다.
    deploy my application
    

다음 단계

Gemini는 google-cicd-deploy 기술을 활성화하고 여러 작업을 실행합니다.

  • 프로젝트 분석: 애플리케이션 유형 (예: Spring Boot)을 식별합니다.
  • 런타임 제안: Google Cloud Run과 같은 적합한 런타임을 제안합니다.
  • 보안 검사: MCP 도구를 사용하여 유출된 비밀번호를 검사합니다. 메시지가 표시되면 도구를 실행하도록 허용해야 합니다.
  • 구성 추출: gcloud를 사용하여 현재 프로젝트 환경을 읽습니다.
  • 매개변수 제안: 배포 매개변수의 적절한 기본값을 표시하고 확인을 요청합니다.

제안된 구성을 검토하고 배포를 확인합니다.

완료되면 Gemini는 실행 중인 애플리케이션의 URL 을 제공합니다.

5. 정리

Google Cloud 계정에 지속적으로 요금이 청구되지 않도록 하려면 이 Codelab 중에 만든 리소스를 삭제합니다.

Cloud Run에 배포한 경우 다음 명령어를 사용하여 서비스를 삭제할 수 있습니다(을 컴퓨팅 리전(예: us-central1)으로 바꿈).

gcloud run services delete spring-petclinic --region <REGION>

또는 이 Codelab을 위해 전용 프로젝트를 만든 경우 전체 프로젝트를 삭제할 수 있습니다.

gcloud projects delete <YOUR_PROJECT_ID>

6. 축하합니다

축하합니다. Gemini CLI 및 CI/CD 확장 프로그램을 사용하여 자연어 프롬프트를 통해 Google Cloud Run에 애플리케이션을 배포했습니다.

학습한 내용

  • Gemini CLICI/CD 확장 프로그램 을 설치하고 구성하는 방법
  • 자연어를 사용하여 배포 흐름을 트리거하는 방법
  • Gemini가 프로젝트를 분석하고 보안 검사를 처리하며 런타임을 제안하는 방법

다음 단계

  • 전체 파이프라인 설계 또는 Terraform 생성과 같은 CI/CD 확장 프로그램으로 더 둘러보기 고급 프롬프트.
  • CI/CD 확장 프로그램을 확인합니다.
  • Developer Connect를 자세히 알아보세요.

참조 문서