체크포인트
Enable relevant APIs and set IAM roles.
/ 20
Create and start a Cloud Workstation.
/ 20
Deploy your app to Cloud Run.
/ 60
Gemini를 사용하여 앱 개발하기
개요
이 실습에서는 Google Cloud의 AI 기반 공동작업 도구인 Gemini를 사용하여 샘플 앱을 탐색, 생성, 수정, 테스트, 배포합니다.
Cloud Workstations를 사용하여 Code OSS를 IDE로 사용하는 개발 환경을 만듭니다. Cloud Code에서 Gemini CodeAssist를 사용하여 코드를 이해하고 두 가지 API 메서드가 있는 샘플 인벤토리 앱을 빌드합니다. 또한 Gemini를 사용하여 Cloud Run에 앱을 배포하는 단계를 생성합니다.
이 실습은 앱 빌드에 참여한 경험이 있지만 클라우드 애플리케이션 개발에 익숙하지 않은 모든 경험 수준의 개발자를 대상으로 합니다. VS Code 또는 Code OSS를 IDE로 사용한 경험이 있고 Python 및 Flask 프레임워크에 익숙한 경우 도움이 됩니다.
목표
이 실습에서는 다음 작업을 수행하는 방법을 알아봅니다.
- Cloud Workstations를 사용하여 클라우드 기반 애플리케이션 개발 환경 만들기
- Gemini에 컨텍스트 기반 질문을 하여 앱을 배포하는 데 사용할 수 있는 다양한 Google 서비스 살펴보기
- Gemini에 프롬프트를 입력하여 Cloud Run에서 기본 앱을 개발하는 데 사용할 수 있는 템플릿 제공받기
- Gemini를 사용해 코드를 설명하고 생성하여 앱을 만들고 탐색하고 수정하기
- 앱을 로컬에서 실행 및 테스트한 다음 Gemini를 사용해 단계를 생성하여 Google Cloud에 배포하기
설정
각 실습에서는 정해진 기간 동안 새 Google Cloud 프로젝트와 리소스 집합이 무료로 제공됩니다.
-
시크릿 창을 사용하여 Qwiklabs에 로그인합니다.
-
실습 사용 가능 시간(예:
1:15:00
)을 참고하여 해당 시간 내에 완료합니다.
일시중지 기능은 없습니다. 필요한 경우 다시 시작할 수 있지만 처음부터 시작해야 합니다. -
준비가 되면 실습 시작을 클릭합니다.
-
실습 사용자 인증 정보(사용자 이름 및 비밀번호)를 기록해 두세요. Google Cloud Console에 로그인합니다.
-
Google Console 열기를 클릭합니다.
-
다른 계정 사용을 클릭한 다음, 안내 메시지에 이 실습에 대한 사용자 인증 정보를 복사하여 붙여넣습니다.
다른 사용자 인증 정보를 사용하는 경우 오류가 발생하거나 요금이 부과됩니다. -
약관에 동의하고 리소스 복구 페이지를 건너뜁니다.
Cloud Shell 활성화
Cloud Shell은 여러 개발 도구가 포함된 가상 머신입니다. 5GB의 영구적인 홈 디렉터리를 제공하며 Google Cloud에서 실행됩니다. Cloud Shell을 사용하면 명령줄을 통해 Google Cloud 리소스에 액세스할 수 있습니다. gcloud
는 Google Cloud의 명령줄 도구입니다. Cloud Shell에 사전 설치되어 있으며 탭 자동 완성을 지원합니다.
-
Google Cloud Console의 탐색창에서 Cloud Shell 활성화()를 클릭합니다.
-
계속을 클릭합니다.
환경을 프로비저닝하고 연결하는 데는 몇 분 정도 소요됩니다. 연결되면 사용자 인증도 처리되어 프로젝트가 PROJECT_ID로 설정됩니다. 예를 들면 다음과 같습니다.
샘플 명령어
-
활성 계정 이름을 나열합니다.
(출력)
(출력 예시)
-
프로젝트 ID를 나열합니다.
(출력)
(출력 예시)
작업 1. 환경 및 계정 구성
-
실습 사용자 인증 정보로 Google Cloud 콘솔에 로그인하고 Cloud Shell 터미널 창을 엽니다.
-
Cloud Shell에서 프로젝트 ID 및 리전 환경 변수를 설정하려면 다음 명령어를 실행합니다.
PROJECT_ID=$(gcloud config get-value project) REGION={{{project_0.default_region|set at lab start}}} echo "PROJECT_ID=${PROJECT_ID}" echo "REGION=${REGION}" -
로그인한 Google 사용자 계정을 환경 변수에 저장하려면 다음 명령어를 실행합니다.
USER=$(gcloud config get-value account 2> /dev/null) echo "USER=${USER}" -
Gemini용 Cloud AI Companion API를 사용 설정합니다.
gcloud services enable cloudaicompanion.googleapis.com --project ${PROJECT_ID} -
Gemini를 사용하려면 필요한 IAM 역할을 Google Cloud Qwiklabs 사용자 계정에 부여합니다.
gcloud projects add-iam-policy-binding ${PROJECT_ID} --member user:${USER} --role=roles/cloudaicompanion.user gcloud projects add-iam-policy-binding ${PROJECT_ID} --member user:${USER} --role=roles/serviceusage.serviceUsageViewer 이러한 역할을 추가하면 사용자가 Gemini 지원을 사용할 수 있습니다.
목표를 확인하려면 내 진행 상황 확인하기를 클릭합니다.
작업 2. 클라우드 워크스테이션 만들기
이 실습에서는 Gemini 지원과 Cloud Workstations IDE용 Cloud Code 플러그인을 사용하여 앱을 개발합니다. Cloud Workstations는 Gemini가 기본 통합된 완전 관리형 통합 개발 환경입니다.
이 작업에서는 클라우드 워크스테이션 환경을 구성 및 프로비저닝하고 Gemini용 Cloud Code 플러그인을 사용 설정합니다.
워크스테이션 클러스터 보기
이 실습을 위해 my-cluster
라는 이름의 워크스테이션 클러스터가 이미 생성되어 있습니다. 이 클러스터는 워크스테이션을 구성하고 만드는 데 사용됩니다.
-
Google Cloud 콘솔에서 탐색 메뉴()를 선택한 다음 제품 더보기 > 도구 > Cloud Workstations를 선택합니다.
-
탐색창에서 클러스터 관리를 클릭합니다.
-
클러스터의 상태를 확인합니다. 클러스터의 상태가
조정 중
또는업데이트 중
인 경우 주기적으로 새로고침하여준비됨
상태가 될 때까지 기다렸다가 다음 단계로 이동합니다.
워크스테이션 구성 만들기
워크스테이션을 만들기 전에 Cloud Workstations에서 워크스테이션 구성을 만들어야 합니다.
-
탐색창에서 워크스테이션 구성을 클릭한 다음 워크스테이션 구성 만들기를 클릭합니다.
-
다음 값을 지정합니다.
속성 값 이름 my-config 워크스테이션 클러스터 my-cluster 선택 -
만들기를 클릭합니다.
-
새로고침을 클릭합니다.
-
생성 중인 구성의 상태를 확인합니다. 구성의 상태가
조정 중
또는업데이트 중
인 경우 주기적으로 새로고침하여준비됨
상태가 될 때까지 기다렸다가 다음 단계로 이동합니다.
워크스테이션 만들기
-
탐색창에서 워크스테이션을 클릭한 다음 워크스테이션 만들기를 클릭합니다.
-
다음 값을 지정합니다.
속성 값 이름 my-workstation 구성 my-config 선택 -
만들기를 클릭합니다.
워크스테이션이 생성되면 내 워크스테이션 아래에
중지됨
상태로 나열됩니다. -
워크스테이션을 시작하려면 시작을 클릭합니다.
워크스테이션이 시작되면 상태가
시작 중
으로 변경됩니다. 상태가 사용할 준비가 되었음을 나타내는실행 중
으로 변경될 때까지 기다립니다. 워크스테이션이 완전히 시작되려면 몇 분 정도 걸릴 수 있습니다.
IDE 실행
일부 확장 프로그램이 제대로 작동하려면 브라우저에서 서드 파티 쿠키를 사용 설정해야 합니다.
-
Chrome에서 서드 파티 쿠키를 사용 설정하려면 Chrome 메뉴에서 설정을 클릭합니다.
-
검색창에 서드 파티 쿠키를 입력합니다.
-
서드 파티 쿠키 설정을 클릭하고 서드 파티 쿠키 허용을 선택합니다.
참고: 실습 후 브라우저를 현재 설정으로 복원하려는 경우 서드 파티 쿠키의 원래 설정을 기록해 두세요.
-
워크스테이션에서 Code OSS IDE를 실행하려면 Google Cloud 콘솔의 워크스테이션 페이지에서 실행을 클릭합니다.
별도의 브라우저 탭에서 IDE가 열립니다.
목표를 확인하려면 내 진행 상황 확인하기를 클릭합니다.
작업 3. Cloud Code 확장 프로그램을 업데이트하여 Gemini 사용 설정
이 작업에서는 워크스테이션 IDE의 Cloud Code에 Gemini를 사용 설정합니다.
Google Cloud에 연결
워크스테이션에서 Google Cloud에 연결하려면 다음 단계를 수행합니다.
-
창 하단의 상태 표시줄에서 Cloud Code - 로그인을 클릭합니다.
-
로그인하라는 메시지가 표시되면 로그인 진행을 클릭합니다.
터미널에 링크가 표시됩니다.
-
Cloud Code 로그인 과정을 시작하려면 Control(Windows 및 Linux의 경우) 또는 Command(MacOS의 경우) 키를 누르고 터미널의 링크를 클릭합니다.
-
외부 웹사이트를 열지 확인하라는 메시지가 표시되면 열기를 클릭합니다.
-
학생 이메일 주소를 클릭합니다.
-
계속 진행할지 묻는 메시지가 표시되면 계속을 클릭합니다.
-
Google Cloud SDK에서 Google 계정에 액세스하고 약관에 동의하도록 허용하려면 허용을 클릭합니다.
인증 코드가 브라우저 탭에 표시됩니다.
참고: gcloud auth login 명령어를 실행했다는 경고가 표시될 수 있습니다. 이는 정상적인 프로세스입니다. 사용자를 대신하여 IDE에서 이 명령어를 실행했습니다. -
복사를 클릭합니다.
-
IDE로 돌아와서 터미널의 승인 코드 입력이라고 표시된 곳에 코드를 붙여넣습니다.
-
클립보드에서 복사한 코드를 승인할지 묻는 메시지가 표시되면 허용을 클릭합니다.
-
Enter를 클릭한 다음 상태 표시줄에 Cloud Code - 프로젝트 없음이 표시될 때까지 기다립니다.
이제 Google Cloud에 연결되었습니다.
Cloud Code에서 Gemini 사용 설정
워크스테이션 IDE의 Cloud Code에 Gemini를 사용 설정하려면 다음 단계를 수행합니다.
-
워크스테이션 IDE에서 메뉴()를 클릭한 다음 파일 > 환경설정 > 설정으로 이동합니다.
-
설정 대화상자의 사용자 탭에서 확장 프로그램 > Google Cloud Code를 선택합니다.
-
검색 설정에
Gemini
를 입력합니다. -
Qwiklabs 실습 사용자 인증 정보 패널에서 프로젝트 ID를 복사하려면 복사를 클릭합니다.
-
Cloud Code 설정 페이지에서 Cloud Code > Gemini: 프로젝트에 Google Cloud 프로젝트 ID를 붙여넣습니다.
참고: 이 설정은 Cloud Code > Duet AI: 프로젝트로 지정되었을 수 있습니다. -
Cloud Code > Gemini: 사용 설정이 사용 설정되어 있는지 확인합니다.
참고: 이 설정은 Cloud Code > Duet AI: 사용 설정으로 지정되었을 수 있습니다. -
IDE 상태 표시줄에서 Cloud Code - 프로젝트 없음을 클릭합니다.
-
Google Cloud 프로젝트 선택을 클릭한 다음 프로젝트 ID를 클릭합니다.
이제 프로젝트 ID가 상태 표시줄에 표시됩니다. 이제 Gemini를 사용할 준비가 되었습니다.
작업 4. Gemini와 채팅하기
Gemini를 사용하면 애플리케이션 아키텍처 요구사항을 충족하는 Google Cloud 서비스를 선택할 수 있습니다. 로컬 IDE에서 앱을 개발 및 테스트한 다음 Google Cloud에 배포하려는 경우 Gemini와의 채팅을 통해 도움을 받을 수 있습니다.
이 작업에서는 Gemini 창을 사용하여 프롬프트를 입력하고 Gemini의 대답을 확인합니다.
프롬프트는 필요한 도움을 설명하는 질문이나 문장입니다. 프롬프트에는 Google Cloud에서 더 유용하고 완전한 대답을 제공하기 위해 분석하는 기존 코드의 컨텍스트를 포함할 수 있습니다. 만족스러운 대답을 생성하는 프롬프트를 작성하는 방법에 대한 자세한 내용은 Google Cloud의 Gemini에 대해 더 나은 프롬프트 작성을 참조하세요.
Gemini에 프롬프트 입력
Google Cloud 서비스에 대해 Gemini에 프롬프트를 입력하려면 다음 단계를 수행합니다.
-
Gemini 채팅 창을 열려면 IDE 작업 표시줄에서 Gemini()를 클릭합니다.
-
Gemini 채팅 창을 열려고 할 때 오류가 발생하면 브라우저 창을 새로고침합니다.
-
Gemini 창에 다음 프롬프트를 입력한 다음 보내기()를 클릭합니다.
I am new to Google Cloud and I want to use the Cloud Code extension. Give me some examples of Google services that I can use to build and deploy a sample app. Gemini는 대답으로 Google Cloud 서비스 목록 및 설명을 표시합니다.
이 예시에서는 샘플 앱을 빌드하고 배포하는 데 도움이 되는 두 가지 Google Cloud 서비스로 Gemini가 Cloud Run과 Cloud Functions를 모두 제안한다고 가정합니다. 해당 서비스에 대한 자세한 정보를 요청할 수 있습니다.
-
후속 질문이나 프롬프트를 제공하려면 Gemini 창에 아래 텍스트를 입력한 다음 보내기를 클릭합니다.
What is the difference between Cloud Run and Cloud Functions? Gemini는 응답으로 두 Google Cloud 서비스 간의 주요 차이점을 표시합니다.
-
채팅 기록을 재설정하려면 Gemini 창에서 채팅 재설정()을 클릭합니다.
참고: 채팅 기록 상태는 메모리에만 보관되며 다른 작업공간으로 전환하거나 IDE를 닫으면 유지되지 않습니다. Gemini는 사용자의 프롬프트나 프롬프트에 대한 대답을 모델을 학습시키기 위한 데이터로 사용하지 않습니다. 자세한 내용은 Google Cloud를 위한 Gemini에서 데이터를 사용하는 방법을 참조하세요.
작업 5. Python 앱 개발
이제 Cloud Run을 사용하여 기본 Python 앱을 만들고 배포해 보겠습니다. Cloud Run 및 Cloud Code를 처음 사용하는 경우 앱 만들기 단계를 수행하는 데 도움이 필요합니다.
이 작업에서는 Gemini에 프롬프트를 입력하여 Cloud Run에서 Hello World Python 앱을 빌드하는 데 도움을 요청합니다.
Gemini의 도움 받기
-
Gemini 창에서 Cloud Code를 사용하여 Cloud Run 앱을 만드는 방법을 알아보려면 다음 프롬프트를 입력한 다음 보내기()를 클릭합니다.
How do I create a new Cloud Run app in Cloud Code using the command palette? What languages are supported? -
Gemini의 대답에서 앱을 만드는 단계를 확인합니다. Gemini는 Cloud Run 앱에 지원되는 언어도 표시합니다.
참고: VS Code의 명령어 팔레트는 Cloud Code의 명령어를 포함한 모든 명령어 목록을 제공합니다.
Gemini의 단계를 사용하여 Python 앱 만들기
-
메뉴()를 클릭한 다음 보기 > 명령어 팔레트로 이동합니다.
-
Cloud Code New
를 입력한 다음 Cloud Code: 새 애플리케이션을 선택합니다. -
Cloud Run 애플리케이션을 선택합니다.
-
Python(Flask): Cloud Run을 선택합니다.
-
앱 이름을 업데이트하고 최상위 폴더를
/home/user/hello-world
로 업데이트한 다음 확인을 클릭합니다.Cloud Code는 템플릿을 다운로드하고 IDE의 폴더에 애플리케이션 파일을 만듭니다.
Gemini로 앱 탐색
이제 Cloud Run에서 Hello World
앱을 만들었으므로 Gemini를 사용하여 IDE에 배포된 파일과 코드 스니펫을 설명할 수 있습니다.
-
파일이 표시되지 않으면 IDE 작업 표시줄에서 탐색기()를 클릭합니다.
-
탐색기 창에서 Dockerfile을 선택합니다.
-
Dockerfile의 콘텐츠를 모두 선택하고 전구 아이콘()을 클릭한 다음 작업 더보기 메뉴에서 설명을 클릭합니다.
Gemini는
Dockerfile
의 콘텐츠와 기능에 대한 자연어 설명을 작성해 줍니다. 파일 콘텐츠의 일부를 선택하고 전구 아이콘()을 클릭한 다음 설명을 클릭해도 됩니다. -
ENTRYPOINT로 시작하는 줄을 선택하고 전구 아이콘()을 클릭한 다음 설명을 클릭합니다.
Gemini는 대답으로 ENTRYPOINT 안내에 관한 세부정보를 표시합니다. 이 안내를 통해 컨테이너가 실행될 때 Docker가 app.py 파일을 실행한다는 사실을 알 수 있습니다.
-
app.py
파일의 콘텐츠를 보려면 작업 표시줄에서 탐색기()를 클릭한 다음app.py
를 클릭합니다. -
hello()
함수 정의에서K_SERVICE
및K_REVISION
환경 변수가 포함된 줄을 선택합니다. 전구 아이콘()을 클릭한 다음 설명을 클릭합니다.Gemini는 대답으로 이 두 가지 Cloud Run 환경 변수와 이 변수가 애플리케이션 코드에서 사용되는 방식에 관한 자세한 설명을 표시합니다.
로컬로 앱 실행
Cloud Run 에뮬레이터를 사용하여 IDE에서 앱을 로컬로 실행할 수 있습니다. 이 경우 로컬로 실행이란 워크스테이션 머신에서 실행한다는 것을 의미합니다.
-
IDE의 작업 표시줄에서 Cloud Code()를 클릭한 다음 Cloud Run을 클릭합니다.
참고: 먼저 Cloud Run 에뮬레이터를 사용하여 앱을 실행하므로 아직 Cloud Run API를 사용 설정할 필요가 없습니다. -
Cloud Run의 작업 표시줄에서 로컬 Cloud Run 에뮬레이터에서 앱 실행()을 클릭한 다음 실행을 클릭합니다.
IDE의 출력 탭에 빌드 진행 상황이 표시됩니다.
-
화면 상단에 Google API에 액세스하려면 minikube gcp-auth 부가기능 사용 설정 메시지가 표시되면 예를 클릭합니다.
빌드 및 배포가 완료될 때까지 기다립니다.
-
localhost URL에서 Hello World 서비스로 연결되는 링크 위에 마우스 포인터를 가져간 다음 링크로 이동을 클릭합니다.
브라우저에 서비스가 실행 중임을 나타내는 페이지가 표시되는 새 탭이 열립니다.
작업 6. Python 앱 보완
이제 인벤토리 데이터 관리에 사용할 수 있도록 데이터와 기능을 앱에 추가해 보겠습니다.
이 작업에서는 먼저 앱에 인벤토리 데이터를 추가합니다.
Gemini를 사용하여 샘플 데이터 생성
-
IDE의 작업 표시줄에서 탐색기()를 클릭합니다.
-
새 파일()을 클릭하고
inventory.py
라는 이름의 파일을 만듭니다. -
Gemini가 샘플 데이터를 생성하도록 하려면 Gemini 창을 열고 다음 프롬프트를 입력한 다음 보내기를 클릭합니다.
Create a variable called inventory which is a list of 3 JSON objects. Each JSON object has 2 attributes: productid and onhandqty. Both attributes are strings. Gemini는 3개의 JSON 객체가 포함된
inventory
JSON 배열을 생성합니다. -
샘플 JSON 데이터를 inventory.py 파일에 삽입하려면 Gemini 대답에서 현재 파일에 삽입()을 클릭합니다. 파일의 콘텐츠는 다음과 유사합니다.
inventory = [ { "productid": "P001", "onhandqty": "10" }, { "productid": "P002", "onhandqty": "20" }, { "productid": "P003", "onhandqty": "30" } ] -
inventory.py
파일을home/user/hello-world
폴더에 저장하려면 IDE 메뉴()에서 파일 > 저장을 클릭합니다.다음 하위 작업에서 이 샘플 인벤토리 데이터를 사용합니다.
앱에 GET/인벤토리 목록 API 메서드 추가
이제 인벤토리 데이터에 대해 작업을 수행할 수 있는 API 메서드를 app.py
파일에 도입합니다. 이 하위 작업을 완료하려면 Gemini의 코드 생성 기능을 사용하면 됩니다.
-
탐색기의 폴더 및 파일 목록에서
app.py
파일을 선택하여 엽니다. -
flask import 문을 수정하여
inventory.py
파일과jsonify
라이브러리를 추가합니다.from flask import Flask, render_template, jsonify from inventory import inventory -
app.py
파일에서 커서를 app 할당 문 아래에 놓습니다.app = Flask(__name__) -
Gemini가 첫 번째 API 메서드의 코드를 생성하도록 하려면
app.py
파일에 다음 주석을 입력합니다.# Generate an app route to display a list of inventory items in the JSON format from the inventory.py file. # Use the GET method. -
주석 아래의 빈 줄을 포함하여 주석 줄을 선택합니다.
-
전구 아이콘()을 클릭한 다음 작업 더보기 메뉴에서 코드 생성을 선택합니다.
Gemini는
inventory.py
파일에서 항목 목록을 반환하는 GET 작업의 함수를 생성합니다. 함수는 일반적으로 다음과 유사합니다.@app.route('/inventory', methods=['GET']) def inventory_list(): """Return a list of inventory items in JSON format.""" return jsonify(inventory) 참고: jsonify(inventory)
함수에 대해 자세히 알아보려면 해당 용어를 강조 표시하고 Gemini에 코드를 설명해 달라는 프롬프트를 입력합니다. -
생성된 코드를 수락하려면 코드 생성 대답의 어느 부분에든 마우스 포인터를 가져간 다음 수락을 클릭합니다.
중요: Gemini는 코드 스니펫을 두 개 이상 생성할 수 있으며, 이러한 코드 스니펫은 위에 표시된 코드 스니펫과 다를 수 있습니다. -
생성된 코드의 app.route 문과 return 문이 위에 표시된 코드와 다른 경우 생성된 코드 스니펫을 위에 표시된 코드 스니펫으로 바꿉니다. 이렇게 해야 실습이 의도한 대로 작동하는지 확인할 수 있습니다.
앱에 GET /인벤토리/ 메서드 추가
productID가 주어졌을 때 특정 인벤토리 항목에 대한 데이터를 반환하는 또 다른 API 메서드를 추가해 보겠습니다. productID를 찾을 수 없는 경우 API는 표준 HTTP 상태 코드 404를 반환합니다.
-
몇 개의 빈 줄을 추가합니다.
-
Gemini가 이 두 번째 API 메서드의 코드를 생성하도록 하려면
app.py
파일에 다음 주석을 입력합니다.# Generate an App route to get a product from the list of inventory items given the productID. # Use the GET method. # If there is an invalid productID, return a 404 error with an error message in the JSON. -
3개의 주석 줄과 주석 아래의 빈 줄을 선택하고 전구 아이콘()을 클릭한 다음 작업 더보기 메뉴에서 코드 생성을 선택합니다.
Gemini는 인벤토리 파일에서 요청에 포함된 productID의 항목을 반환하거나 제품이 존재하지 않는 경우 404 상태 코드를 반환하는 GET 작업의 함수를 생성합니다.
@app.route('/inventory/<productid>', methods=['GET']) def inventory_item(productid): """Return a single inventory item in JSON format.""" for item in inventory: if item['productid'] == productid: return jsonify(item) return jsonify({'error': 'Product not found'}), 404 -
생성된 코드 응답의 어느 부분에든 마우스 포인터를 가져갑니다. 생성된 코드를 수락하려면 툴바에서 수락을 클릭합니다.
-
생성된 코드가 위에 표시된 코드와 다른 경우 생성된 코드 스니펫을 위에 표시된 코드 스니펫으로 바꿉니다.
로컬에서 앱 다시 빌드 및 재배포
Cloud Run 에뮬레이터를 사용하여 IDE에서 앱을 로컬로 실행할 수 있습니다. 이 경우 로컬로 실행이란 워크스테이션 머신에서 실행한다는 것을 의미합니다.
-
IDE의 작업 표시줄에서 Cloud Code()를 클릭합니다.
-
Cloud Run의 작업 표시줄에서 로컬 Cloud Run 에뮬레이터에서 앱 실행()을 클릭합니다.
-
화면 상단에 Google API에 액세스하려면 minikube gcp-auth 부가기능 사용 설정 메시지가 표시되면 예를 클릭합니다.
빌드 및 배포가 완료될 때까지 기다립니다.
-
localhost URL에서 Hello World 서비스로 연결되는 링크 위에 마우스 포인터를 가져간 다음 링크로 이동을 클릭합니다.
브라우저에 서비스가 실행 중임을 나타내는 페이지가 표시되는 새 탭이 열립니다.
API 메서드 테스트
-
이전 작업의 단계에 따라 앱을 로컬로 실행합니다.
-
링크를 따라 별도의 브라우저 탭에서 실행 중인 앱을 확인한 후 이 탭의 URL의 끝에
/inventory
를 추가하고 Enter를 누릅니다.API는
inventory.py
파일의 제품 목록이 포함된 JSON 응답을 반환합니다. -
/inventory
로 끝나는 URL의 끝에/{PRODUCTID}
를 추가합니다. 여기서{PRODUCTID}
는 인벤토리에 있는 제품 ID입니다. -
Enter를 누릅니다.
API는 특정 제품에 대한 데이터가 포함된 JSON 응답을 반환합니다.
-
제품 ID를
XXXXX
로 바꾸고 Enter를 누릅니다.XXXXX는 유효한 제품 ID가 아니므로 API는 제품을 찾을 수 없음을 나타내는 JSON 오류 응답을 반환합니다.
작업 7. Cloud Run에 앱 배포
이제 Google Cloud에서 Cloud Run에 앱을 배포할 수 있습니다.
-
작업 표시줄 기본 메뉴()에서 보기 > 명령어 팔레트를 클릭합니다.
-
명령어 팔레트 필드에 Cloud Code Deploy를 입력한 다음 목록에서 Cloud Code: Cloud Run에 배포를 선택합니다.
-
프로젝트에 Cloud Run API를 사용 설정하려면 API 사용 설정을 클릭합니다.
-
서비스 설정 페이지에서 리전에
을(를) 선택합니다. -
나머지 설정은 기본값으로 두고 배포를 선택합니다.
그러면 Cloud Code가 이미지를 빌드하여 레지스트리에 푸시하고 서비스를 Cloud Run에 배포합니다. 몇 분 정도 걸릴 수 있습니다.
참고: 배포에 대한 상세 로그를 보려면 상세 로그 표시를 클릭합니다. -
실행 중인 서비스를 보려면 Cloud Run에 배포 대화상자에 표시된 URL을 엽니다.
-
URL의 끝에
/inventory
및/inventory/{PRODUCTID}
경로를 추가하여 서비스를 테스트하고 응답을 확인합니다.Cloud Run 서비스 인벤토리 페이지의 URL을 가져오려면 Cloud Shell에서 다음 명령어를 실행합니다.
export SVC_URL=$(gcloud run services describe hello-world \ --region {{{project_0.default_region|set at lab start}}} \ --platform managed \ --format='value(status.url)') echo ${SVC_URL}/inventory
목표를 확인하려면 내 진행 상황 확인하기를 클릭합니다.
실습 종료
실습을 완료하면 실습 종료를 클릭합니다. Qwiklabs에서 사용된 리소스를 자동으로 삭제하고 계정을 지웁니다.
실습 경험을 평가할 수 있습니다. 해당하는 별표 수를 선택하고 의견을 입력한 후 제출을 클릭합니다.
별점의 의미는 다음과 같습니다.
- 별표 1개 = 매우 불만족
- 별표 2개 = 불만족
- 별표 3개 = 중간
- 별표 4개 = 만족
- 별표 5개 = 매우 만족
의견을 제공하고 싶지 않다면 대화상자를 닫으면 됩니다.
의견이나 제안 또는 수정할 사항이 있다면 지원 탭을 사용하세요.
수고하셨습니다
이 실습에서는 다음 작업을 수행하는 방법을 알아봤습니다.
- Gemini에 컨텍스트 기반 질문을 하여 앱을 배포하는 데 사용할 수 있는 다양한 Google 서비스 살펴보기
- Gemini에 프롬프트를 입력하여 Cloud Run에서 기본 앱을 개발하는 데 사용할 수 있는 템플릿 제공받기
- Gemini를 사용해 코드를 설명하고 생성하여 앱을 만들고 탐색하고 수정하기
- 앱을 로컬에서 실행 및 테스트한 다음 Gemini를 사용해 단계를 생성하여 Google Cloud에 배포하기
다음 단계/더 학습하기
- Google Cloud를 위한 Gemini 개요
- Google Cloud를 위한 Gemini 지원을 통해 Python 앱 개발
- Google Cloud를 위한 Gemini 지원을 통해 Node.js 앱 개발
Copyright 2024 Google LLC All rights reserved. Google 및 Google 로고는 Google LLC의 상표입니다. 기타 모든 회사명 및 제품명은 해당 업체의 상표일 수 있습니다.