1. 소개
이 Codelab에서는 Gemini CLI 및 CI/CD 확장 프로그램을 사용하여 플랫폼 엔지니어링의 '초보에서 전문가로' 워크플로를 경험합니다. 애플리케이션 (예: Spring Petclinic 데모 또는 Python Flask 앱)을 빌드했으며 이제 이를 Google Cloud에 배포하여 공유하려는 엔터프라이즈 개발자 역할을 맡게 됩니다.
복잡한 파이프라인을 직접 구성하는 대신 자연어를 사용하여 Gemini를 안내합니다. 에이전트가 프로젝트를 분석하고, Google Cloud Run과 같은 소규모 타겟 런타임을 제안하고, 유출된 비밀번호에 대한 보안 검사를 실행하고, 배포를 처리하여 작동하는 URL을 제공합니다.
실습할 내용
- 저장소를 클론합니다 (자체 저장소 또는 Spring Petclinic과 같은 데모 앱 사용 가능).
- Gemini CLI 및 CI/CD 확장 프로그램을 설치하고 구성합니다.
deploy my application와 같은 프롬프트를 사용하여 배포 스킬을 트리거합니다.- Gemini가 프로젝트를 분석하고, Cloud Run을 제안하고, 보안 검사를 실행하고, 애플리케이션을 배포하는 과정을 확인하세요.
- 실행 중인 애플리케이션을 확인합니다.
필요한 항목
- 웹브라우저(예: Chrome)
- 결제가 사용 설정된 Google Cloud 프로젝트.
이 Codelab은 초보자를 포함한 모든 수준의 개발자를 대상으로 합니다.
2. 시작하기 전에
결제 설정
Google Cloud 프로젝트 만들기 또는 선택
Google Cloud 프로젝트 만들기
- Google Cloud 콘솔의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.
- Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다. 프로젝트에 결제가 사용 설정되어 있는지 확인하는 방법을 알아보세요.
Cloud Shell 시작
Cloud Shell은 Google Cloud에서 실행되는 명령줄 환경으로, 필요한 도구가 미리 로드되어 제공됩니다.
- Google Cloud 콘솔 상단에서 Cloud Shell 활성화를 클릭합니다.
- Cloud Shell에 연결되면 인증을 확인합니다.
gcloud auth list - 프로젝트가 구성되어 있는지 확인합니다.
gcloud config get project - 프로젝트가 예상대로 설정되지 않은 경우 설정합니다.
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 확장 프로그램을 설치하고 구성합니다.
- Gemini CLI가 설치되어 있는지 확인합니다. 아직 설치하지 않았다면 Gemini CLI 시작 가이드의 안내를 따르세요.
- 로그인: Google 계정으로 로그인하는 것이 좋습니다. 자세한 내용은 인증 가이드를 참고하세요.
- CI/CD 확장 프로그램 설치: 다음 명령어를 실행하여 GitHub에서 확장 프로그램을 설치합니다.
설치된 확장 프로그램을 나열하여 확장 프로그램 설치를 검증할 수 있습니다.gemini extensions install https://github.com/gemini-cli-extensions/cicd
gemini extensions list
- 애플리케이션 기본 사용자 인증 정보 (ADC) 구성: CI/CD 확장 프로그램에는 ADC가 구성되어 있어야 합니다. 실행:
gcloud auth login gcloud auth application-default login
- 기본 프로젝트 및 리전 설정: 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 등)을 사용하는 애플리케이션이 준비되어 있는 경우 자체 애플리케이션을 사용할 수도 있습니다.
- 저장소를 클론하고 디렉터리로 이동합니다.
git clone https://github.com/spring-projects/spring-petclinic.git cd spring-petclinic
Gemini에 배포 요청
- 프로젝트 디렉터리에서 Gemini CLI를 실행합니다.
gemini
- 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 CLI 및 CI/CD 확장 프로그램을 설치하고 구성하는 방법
- 자연어를 사용하여 배포 흐름을 트리거하는 방법
- Gemini가 프로젝트를 분석하고, 보안 검사를 처리하고, 런타임을 제안하는 방법
다음 단계
- CI/CD 확장 프로그램을 사용하여 전체 파이프라인을 설계하거나 Terraform을 생성하는 등 고급 프롬프트를 더 둘러봅니다.
- CI/CD 확장 프로그램을 확인하세요.
- Developer Connect를 자세히 알아보세요.