始める前に
- ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
- ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
- 画面左上の [ラボを開始] をクリックして開始します
Enable relevant APIs and set IAM roles.
/ 20
Create and start a Cloud Workstation.
/ 20
Deploy your app to Cloud Run.
/ 60
このラボでは、AI を活用した、Google Cloud のコラボレーターである Gemini を使用して、サンプルアプリを確認、作成、変更、テスト、デプロイします。
Cloud Workstations を利用して、Code OSS を IDE として使用する開発環境を作成します。Cloud Code の Gemini Code Assist を使用して、コードを理解し、2 つの API メソッドを持つサンプル インベントリ アプリを構築します。また、Gemini を利用して、作成したアプリの Cloud Run へのデプロイ手順を生成します。
このラボは、アプリの構築に参加した経験がある開発者であれば、クラウド アプリケーションの開発に詳しくない方も対象となります。IDE として VS Code や Code OSS を利用した経験があり、Python と Flask フレームワークに慣れているほうが内容を理解しやすいでしょう。
このラボでは、次のタスクの実行方法について学びます。
各ラボでは、新しい Google Cloud プロジェクトとリソースセットを一定時間無料で利用できます。
[ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。
[Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。
ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。
ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。
必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。
[ラボの詳細] パネルでもユーザー名を確認できます。
[次へ] をクリックします。
以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。
[ラボの詳細] パネルでもパスワードを確認できます。
[次へ] をクリックします。
その後次のように進みます。
その後、このタブで Google Cloud コンソールが開きます。
Cloud Shell は、開発ツールが組み込まれた仮想マシンです。5 GB の永続ホーム ディレクトリを提供し、Google Cloud 上で実行されます。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。gcloud は Google Cloud のコマンドライン ツールで、Cloud Shell にプリインストールされており、Tab キーによる入力補完がサポートされています。
Google Cloud Console のナビゲーション パネルで、「Cloud Shell をアクティブにする」アイコン()をクリックします。
[次へ] をクリックします。
環境がプロビジョニングされ、接続されるまでしばらく待ちます。接続の際に認証も行われ、プロジェクトは現在のプロジェクト ID に設定されます。次に例を示します。
有効なアカウント名前を一覧表示する:
(出力)
(出力例)
プロジェクト ID を一覧表示する:
(出力)
(出力例)
ラボの認証情報を使用して Google Cloud コンソールにログインし、Cloud Shell ターミナル ウィンドウを開きます。
Cloud Shell で次のコマンドを実行して、プロジェクト ID とリージョンの環境変数を設定します。
ログインに使用した Google ユーザー アカウントを環境変数に保存するには、以下のコマンドを実行します。
Gemini 用の Cloud AI Companion API を有効にします。
Gemini を使用できるよう、必要な IAM ロールを Google Skills のユーザー アカウントに付与します。
これらのロールを追加すると、Gemini アシスタンスを利用できるようになります。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
このラボでは Gemini アシスタンスを利用して、Cloud Workstations IDE 用の Cloud Code プラグインでアプリを開発します。Cloud Workstations は Gemini とのネイティブ インテグレーションが含まれているフルマネージド統合開発環境です。
このタスクでは、Cloud Workstations 環境を構成してプロビジョニングし、Gemini 用 Cloud Code プラグインを有効にします。
my-cluster という名前のワークステーション クラスタが、このラボ用に事前に作成されています。このクラスタをワークステーションの構成と作成に使用します。
Google Cloud コンソールのタイトルバーで、[検索] フィールドに「Cloud Workstations」と入力し、検索結果で [Cloud Workstations] をクリックします。
ナビゲーション パネルで [クラスタ管理] をクリックします。
クラスタの [ステータス] を確認します。クラスタのステータスが [調整中] または [更新中] の場合は、定期的に更新して [準備完了] になるまで待ってから次のステップに進みます。
Cloud Workstations でワークステーションを作成する前に、ワークステーション構成を作成する必要があります。
ナビゲーション パネルで、[ワークステーションの構成]、[ワークステーションの構成を作成] の順にクリックします。
次の値を指定します。
| プロパティ | 値 |
|---|---|
| 名前 | my-config |
| ワークステーション クラスタ | my-cluster を選択する |
| クイック スタート ワークステーション | [無効(低コスト)] を選択する |
左側のペインで、[環境設定] を選択します。
[ストレージの設定] > [永続ディスクの設定] で、次の値を指定します。
| プロパティ | 値 |
|---|---|
| ディスクタイプ | [標準] を選択する |
| ディスクサイズ | [200 GB] を選択する |
[作成] をクリックします。
[更新] をクリックします。
作成中の構成の [ステータス] を確認します。構成のステータスが [調整中] または [更新中] の場合は、定期的に更新して [準備完了] になるまで待ってから次のステップに進みます。
ナビゲーション パネルで、[ワークステーション]、[ワークステーションを作成] の順にクリックします。
次の値を指定します。
| プロパティ | 値 |
|---|---|
| ID | my-workstation |
| 構成 | my-config を選択する |
[作成] をクリックします。
ワークステーションが作成されると、[マイ ワークステーション] の下に [停止済み] のステータスで表示されます。
[起動] をクリックして、ワークステーションを起動します。
ワークステーションの起動中は、ステータスが [開始中] に変わります。ステータスが [実行中] に変わるまで待ちます。これは、ワークステーションが使用可能になったことを示します。ワークステーションが完全に起動するまでに数分かかることがあります。
一部の拡張機能は、適切に機能させるためにブラウザでサードパーティ Cookie を有効にする必要があります。
Chrome でサードパーティ Cookie を有効にするには、Chrome メニューで [設定] をクリックします。
検索バーに「サードパーティ Cookie」と入力します。
[サードパーティ Cookie] をクリックし、[サードパーティの Cookie を許可する] を選択します。
ワークステーションで Code OSS IDE を起動するために、Google Cloud コンソールの [ワークステーション] ページで [開始] をクリックします。
IDE が別のブラウザタブで開きます。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
このタスクでは、Cloud Workstations IDE 用の Gemini in Cloud Code を有効にします。
ワークステーションで Google Cloud に接続する手順は、次のとおりです。
ウィンドウ下部のステータスバーで、[Cloud Code - Sign In] をクリックします。
Google Cloud ログインフローを立ち上げるには、Ctrl キー(Windows および Linux の場合)または Command キー(macOS の場合)を押して、ターミナルのリンクをクリックします。
外部ウェブサイトを開くかどうかを確認するメッセージが表示されたら、[開く] をクリックします。
受講者用メールアドレスをクリックします。
このアプリを Google からダウンロードしたことを確認する画面が表示されたら、[ログイン] をクリックします。
確認コードがブラウザタブに表示されます。
[コピー] をクリックします。
IDE に戻り、ターミナルの [認証コードを入力してください] と表示されている場所にコードを貼り付けます。
クリップボードからのコピーを承認するよう求められた場合は、[許可] をクリックします。
Enter キーを押し、ステータスバーに [Cloud Code - No Project] と表示されるまで待ちます。
これで Google Cloud に接続されました。
ワークステーション IDE 用の Gemini in Cloud Code を有効にする手順は、次のとおりです。
ワークステーション IDE の左下にある管理アイコン()をクリックし、[Settings] をクリックします。
[Settings] ダイアログの [User] タブで、[Extensions] > [Gemini Code Assist] を選択します。
[Search settings] で「Gemini」と入力します。
ラボの認証情報パネルで、コピーアイコンをクリックしてプロジェクト ID をコピーします。
Cloud Code の設定ページで [Geminicodeassist: Project] に Google Cloud プロジェクト ID を貼り付けます。
[Geminicodeassist: Enable] が有効になっていることを確認します。
IDE ステータスバーで [Cloud Code - No Project] をクリックします。
[Google Cloud プロジェクトを選択する] をクリックし、前述のプロジェクト ID をクリックします。
プロジェクト ID がステータスバーに表示されます。これで Gemini を使用できるようになりました。
アプリケーション アーキテクチャの要件を満たす Google Cloud サービスを選択するのに Gemini が役立ちます。ローカル IDE でアプリを開発、テストして、Google Cloud にデプロイする場合、Gemini とのチャットが役に立ちます。
このタスクでは、[Gemini Code Assist] ペインを使用してプロンプトを入力し、Gemini からの回答を表示します。
プロンプトとは、必要なサポートについて説明する質問やステートメントのことです。プロンプトには、より有用な、または完全な回答を提供するために Google Cloud が分析する既存のコードからのコンテキストを含めることができます。良い回答を生成するプロンプトの作成方法については、Google Cloud で Gemini により適したプロンプトを作成するをご覧ください。
Gemini に Google Cloud サービスに関する提案を求める手順は次のとおりです。
Gemini とのチャットペインを開くには、IDE のアクティビティ バーで [Gemini Code Assist]()をクリックします。
Gemini とのチャットペインを開くときにエラーが発生する場合は、ブラウザ ウィンドウを更新します。
[Gemini Code Assist] ペインで、次のプロンプトを入力して送信アイコン()をクリックします。
Gemini は Google Cloud サービスと説明のリストを返します。
この例では、サンプルアプリの構築とデプロイに役立つ 2 つの Google Cloud サービスとして Cloud Run と Cloud Functions が Gemini から提案されたとします。これらのサービスに関してさらに詳しく質問できます。
さらに質問する、つまりプロンプトを送信するには、[Gemini Code Assist] ペインで次のテキストを入力して、送信アイコン()をクリックします。
Gemini は 2 つの Google Cloud サービスの主な違いについて回答します。
次は、Cloud Run を使用して基本的な Python アプリを作成、デプロイします。Cloud Run と Cloud Code を初めて使用するため、アプリの作成手順についてサポートが必要です。
このタスクでは、Cloud Run での Hello World Python アプリの構築を支援するよう Gemini に指示します。
Cloud Code を使用して Cloud Run アプリを作成する方法を学習するには、[Gemini Code Assist] ペインで、次のプロンプトを入力して、送信アイコン()をクリックします。
Gemini からの回答で、アプリを作成する手順が示されます。また、Cloud Run アプリ用にサポートされる言語も表示されます。
メニュー()をクリックして、[View] > [Command Palette] に移動します。
「Cloud Code New」と入力して、[Cloud Code: New Application] を選択します。
[Cloud Run application] を選択します。
[Python (Flask): Cloud Run] を選択します。
アプリと最上位フォルダの名前を「/home/user/hello-world-1」に更新して、[OK] をクリックします。
Cloud Code でテンプレートがダウンロードされ、IDE のフォルダ内にアプリケーションのファイルが作成されます。
Cloud Run で Hello World アプリを作成したら、Gemini を使用して、IDE にデプロイされたファイルとコード スニペットについて説明させることができます。
ファイルが表示されない場合は、IDE のアクティビティ バーで Explorer アイコン()をクリックします。
[Explorer] ペインで、[Dockerfile] を選択します。
Dockerfile の内容全体を選択し、電球アイコン()をクリックして、[More Actions] メニューの [Gemini: Explain this] をクリックします。
[Gemini Code Assist] ペインで、送信アイコン()をクリックします。
Gemini が Dockerfile の内容と関数の説明を自然言語で生成します。ファイルの内容の任意の部分を選択し、電球アイコン()をクリックして [Gemini: Explain this] をクリックすることもできます。
ENTRYPOINT で始まる行を選択し、電球アイコン()をクリックして [Gemini: Explain this] をクリックします。
[Gemini Code Assist] ペインで、送信アイコン()をクリックします。
Gemini から ENTRYPOINT 命令の詳細が返されます。コンテナ起動時に、Docker がこの命令を使用して app.py ファイルを実行することがわかります。
app.py ファイルの内容を表示するには、アクティビティ バーで Explorer アイコン()をクリックして、
app.py をクリックします。
hello() 関数定義内で、K_SERVICE 環境変数と K_REVISION 環境変数を含む行を選択します。次に、電球アイコン()をクリックし、[Gemini: Explain this] をクリックします。
[Gemini Code Assist] ペインで、送信アイコン()をクリックします。
Gemini は、これらの 2 つの Cloud Run 環境変数と、それらがアプリケーション コードでどのように使用されているかについて、詳細な説明を返します。
Cloud Run エミュレータを使用して IDE からローカルでアプリを実行できます。ここでのローカルとは、ワークステーション マシンを意味します。
IDE のアクティビティ バーで、Cloud Code アイコン()をクリックして、[Cloud Run] をクリックします。
Cloud Run アクティビティ バーで、Run App on Local Cloud Run Emulator アイコン()、[Run] を順にクリックします。
IDE の [Output] タブにビルドの進行状況が表示されます。
画面上部に minikube gcp-auth アドオンを有効にして Google API にアクセスするようにプロンプトが表示されたら [Yes] を選択します。
ログインを促されたら、[ログインに進む] をクリックします。
ターミナルにリンクが表示されます。
Google Cloud ログインフローを立ち上げるには、Ctrl キー(Windows および Linux の場合)または Command キー(macOS の場合)を押して、ターミナルのリンクをクリックします。
外部ウェブサイトを開くかどうかを確認するメッセージが表示されたら、[開く] をクリックします。
受講者用メールアドレスをクリックします。
続行するかどうかを確認するメッセージが表示されたら、[続行] をクリックします。
Google Cloud SDK に Google アカウントへのアクセスを許可し、利用規約に同意するには、[許可] をクリックします。
確認コードがブラウザタブに表示されます。
[コピー] をクリックします。
IDE に戻り、ターミナルの [認証コードを入力してください] と表示されている場所にコードを貼り付けて、Enter キーを押します。
ビルドとデプロイが完了するまで待ちます。
ローカルホスト URL で hello-world-1 サービスへのリンクの上にポインタを置いて、[Follow link] をクリックします。
新しいタブがブラウザで開き、サービスが実行されていることを示すページが表示されます。
アプリにデータと機能を追加して、インベントリ データの管理に使用できるようにします。
このタスクでは、まずアプリ用のインベントリ データを追加します。
IDE のアクティビティ バーで Explorer アイコン()をクリックします。
新しいファイル アイコン()をクリックして、
inventory.py という名前のファイルを作成します。
Gemini にサンプルデータを生成させるには、[Gemini Code Assist] ペインを開き、次のプロンプトを入力して送信アイコンをクリックします。
Gemini は 3 つの JSON オブジェクトを含む inventory JSON 配列を生成します。
inventory.py ファイルにサンプルの JSON データを挿入するには、Gemini の回答で現在のファイルに挿入アイコン()をクリックします。ファイルの内容は次のようになります。
inventory.py ファイルを home/user/hello-world-1 フォルダに保存するには、IDE メニュー()で [File] > [Save] をクリックします。
このサンプル インベントリ データは次のサブタスクで利用します。
次に、インベントリ データを操作できる API メソッドを app.py ファイルに導入します。このサブタスクを完了するために Gemini のコード生成機能を使用します。
[Explorer] からファイル app.py を開きます。
flask import ステートメントを変更して、inventory.py ファイルと jsonify ライブラリを追加します。
app.py ファイルで、次の app 代入ステートメントの下にカーソルを置きます。
Gemini Code Assist が最初の API メソッドのコードを生成できるようにするには、app.py ファイルに次のコメントを入力します。
コメント行を選択します。このとき、コメントの下の空白行も含めます。
電球アイコン()をクリックし、[Gemini: Generate code] を選択します。
Gemini は inventory.py ファイルからアイテムのリストを返す GET オペレーションの関数を生成します。通常、関数は次のようになります。
jsonify(inventory) 関数の詳細を確認するには、用語をハイライト表示し、コードを説明するよう Gemini に指示します。
生成されたコードを採用するには、そのコードの任意の箇所にポインタを合わせて [Accept] をクリックします。
生成されたコードの app.route と return ステートメントが上で示したコードと異なる場合は、生成されたコード スニペットを上のスニペットと置き換えてください。これで、ラボの意図どおりに進めることができます。
指定したプロダクト ID のインベントリ アイテムに関するデータを返す別の API メソッドを追加します。プロダクト ID が見つからない場合、API は標準 HTTP ステータス コード 404 を返します。
/inventory ルートの後に、何行かの空白行を追加します。
Gemini がこの 2 つ目の API メソッドのコードを生成できるようにするには、app.py ファイルに次のコメントを入力します。
コメント 3 行を下の空白行も含めて選択し、電球アイコン()をクリックして、[Gemini: Generate code] を選択します。
Gemini は、インベントリ ファイルからリクエストで指定された productID を持つアイテムを返すか、指定されたプロダクトが存在しない場合は 404 ステータス コードを返す、GET オペレーションの関数を生成します。
生成されたコードの任意の箇所にポインタを合わせます。生成されたコードを採用するには、ツールバーで [Accept] をクリックします。
生成されたコードが上記のコードと異なる場合は、生成されたコード スニペットを上記のスニペットに置き換えてください。
app.py ファイルは次のようになります。
Cloud Run エミュレータを使用して IDE からローカルでアプリを実行できます。ここでのローカルとは、ワークステーション マシンを意味します。
IDE のアクティビティ バーで Cloud Code アイコン()をクリックします。
Cloud Run アクティビティ バーで、Run App on Local Cloud Run Emulator アイコン()をクリックします。
画面上部に minikube gcp-auth アドオンを有効にして Google API にアクセスするようにプロンプトが表示されたら [Yes] を選択します。
ビルドとデプロイが完了するまで待ちます。
ローカルホスト URL で hello-world-1 サービスへのリンクの上にポインタを置いて、[Follow link] をクリックします。
新しいタブがブラウザで開き、サービスが実行されていることを示すページが表示されます。
前のタスクの手順に沿ってアプリをローカルで実行します。
localhost URL のリンクをクリックして、実行中のアプリが別のブラウザタブで表示されたら、同じタブの URL の末尾に /inventory を追加して Enter キーを押します。
API は inventory.py ファイルからプロダクトのリストを含む JSON レスポンスを返します。JSON レスポンスは次のようになります。
/inventory で終了する URL に /{productID} を追加します。ここで、{productID} はインベントリ内のプロダクト ID です。
上記の例では、有効な URL の末尾は /inventory/12345 です。
後のステップで使用するため、このプロダクト ID をメモしておきます。
Enter キーを押します。
API は特定のプロダクトについてのデータを含む JSON レスポンスを返します。
URL でプロダクト ID を XXXXX に置き換えて、Enter キーを押します。
これで URL の末尾は /inventory/XXXXX になります。
XXXXX は有効なプロダクト ID ではないため、API はプロダクトが見つからないことを示す JSON エラー レスポンスを返します。
これで、Google Cloud 上の Cloud Run にアプリをデプロイできるようになりました。
アクティビティ バーのメインメニュー()で、[View] > [Command Palette] をクリックします。
コマンド パレットのフィールドに「Cloud Code Deploy」と入力し、リストから [Cloud Code: Deploy to Cloud Run] を選択します。
プロジェクトの Cloud Run API を有効にするには、[Enable API] をクリックします。
[Service Settings] ページの [Region] で
残りの設定はデフォルトのままにして、[Deploy] をクリックします。
Cloud Code がイメージをビルドしてレジストリに push し、サービスを Cloud Run にデプロイします。これには数分かかることがあります。
実行中のサービスを表示するには、[Deploy to Cloud Run] ダイアログに表示されている URL を開きます。
サービスをテストするには、/inventory と /inventory/{productID} のパスを URL に追加し、レスポンスを確認します。
Cloud Run サービス インベントリ ページの URL を取得するには、Cloud Shell で次のコマンドを実行します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
ラボでの学習が完了したら、[ラボを終了] をクリックします。ラボで使用したリソースが Qwiklabs から削除され、アカウントの情報も消去されます。
ラボの評価を求めるダイアログが表示されたら、星の数を選択してコメントを入力し、[送信] をクリックします。
星の数は、それぞれ次の評価を表します。
フィードバックを送信しない場合は、ダイアログ ボックスを閉じてください。
フィードバック、ご提案、修正が必要な箇所については、[サポート] タブからお知らせください。
このラボでは、以下の操作について学習しました。
Copyright 2026 Google LLC All rights reserved. Google および Google のロゴは、Google LLC の商標です。その他すべての社名および製品名は、それぞれ該当する企業の商標である可能性があります。
このコンテンツは現在ご利用いただけません
利用可能になりましたら、メールでお知らせいたします
ありがとうございます。
利用可能になりましたら、メールでご連絡いたします
1 回に 1 つのラボ
既存のラボをすべて終了して、このラボを開始することを確認してください