Deploy your app

進行状況を確認

/ 100

このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。

GSP067

Google Cloud セルフペース ラボ

概要

App Engine を使用すると、開発者は、コードが実行される環境に労力をかけずに済み、最も得意な作業、つまりコードの記述に集中できます。開発者はアプリを App Engine にアップロードするだけで、残りは Google Cloud が処理してくれます。サーバー、仮想マシン、インスタンスの概念は抽象化され、必要なすべてのコンピューティングは App Engine が提供します。App Engine がすべて処理してくれるため、開発者はオペレーティング システム、ウェブサーバー、ロギング、モニタリング、ロード バランシング、システム管理、スケーリングについて心配する必要がありません。開発者に必要なのは、組織やユーザー向けのソリューションの構築に集中することだけです。

App Engine スタンダード環境は、Python、Java、PHP、Go、Node.js、Ruby の各言語に対応するアプリケーション ホスティング サービスを提供します。App Engine フレキシブル環境は、カスタム ランタイムに対応することで柔軟性がさらに向上しますが、本ラボでは取り上げません。

App Engine は Google Cloud オリジナルのサーバーレス ランタイムであり、2008 年の初回リリース以降、次のソリューションが追加されています。

  • Cloud Functions: アプリ全体を使用しない場合、大きなモノリシック アプリを複数のマイクロサービスに分割している場合、またはユーザー アクティビティに基づいて実行される短いイベント駆動型タスクを使用する場合に適しています。
  • Cloud Run: App Engine に似たサーバーレス コンテナ ホスティング サービスですが、現在のソフトウェア開発の状況がより的確に反映されています。

このラボでは、基本的なアプリを App Engine にデプロイする方法を学びますが、Cloud Functions や Cloud Run もぜひご確認ください。App Engine では、負荷が高くデータ量が多い状況でも確実に実行されるアプリケーションを簡単にビルドしてデプロイできます(Cloud Functions と Cloud Run も同様です)。

App Engine アプリは、アプリケーションで使用する多数の追加の Cloud サービスやその他の Google サービスにアクセスできます。

アプリケーションは、セキュリティ保護されたサンドボックス環境で実行されます。このため App Engine スタンダード環境では、リクエストを複数のサーバーに分散でき、トラフィック需要に合わせてサーバーがスケーリングされます。サーバーのハードウェア、オペレーティング システム、物理的な場所に関係なく、安全性と信頼性の高い独自の環境でアプリケーションが実行されます。

このハンズオンラボでは、簡単なメッセージを表示するシンプルな App Engine アプリケーションを作成する方法について説明します。

学習内容

このラボでは、Python アプリで以下のタスクを実行する方法について学びます。

  • クローン作成 / ダウンロード
  • テスト
  • 更新
  • テスト
  • デプロイ

設定と要件

[ラボを開始] ボタンをクリックする前に

こちらの説明をお読みください。ラボには時間制限があり、一時停止することはできません。タイマーは、Google Cloud のリソースを利用できる時間を示しており、[ラボを開始] をクリックするとスタートします。

このハンズオンラボでは、シミュレーションやデモ環境ではなく実際のクラウド環境を使って、ラボのアクティビティを行います。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
注: このラボの実行には、シークレット モード(推奨)またはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウント間の競合を防ぎ、個人アカウントに追加料金が発生しないようにすることができます。
  • ラボを完了するための時間(開始後は一時停止できません)
注: このラボでは、受講者アカウントのみを使用してください。別の Google Cloud アカウントを使用すると、そのアカウントに料金が発生する可能性があります。

ラボを開始して Google Cloud コンソールにログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるダイアログでお支払い方法を選択してください。 右側の [ラボの設定とアクセス] パネルには、以下が表示されます。

    • [Google Cloud コンソールを開く] ボタン
    • このラボで使用する一時的な認証情報(ユーザー名とパスワード)
    • このラボを行うために必要なその他の情報(ある場合)

    ラボのタイマーはページの上部に表示され、残り時間が示されます。

  2. [Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。

    ラボでリソースがスピンアップし、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示された場合は、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。

    {{{user_0.username | "Username"}}}

    [ラボの設定とアクセス] パネルでもユーザー名を確認できます。

  4. [次へ] をクリックします。

  5. 以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。

    {{{user_0.password | "Password"}}}

    [ラボの設定とアクセス] パネルでもパスワードを確認できます。

  6. [次へ] をクリックします。

    重要: ラボで指定された認証情報を使用する必要があります。ご自身の Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  7. その後のページはクリックして先に進みます。

    • 利用規約に同意します。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

しばらくすると、このタブで Google Cloud コンソールが開きます。

注: Google Cloud のプロダクトやサービスにアクセスするには、ナビゲーション メニューをクリックするか、[検索] フィールドにサービス名またはプロダクト名を入力します。 ナビゲーション メニューのアイコンと検索フィールド

Cloud Shell をアクティブにする

Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。

  1. Google Cloud コンソールの上部にある「Cloud Shell をアクティブにする」アイコン 「Cloud Shell をアクティブにする」アイコン をクリックします。

  2. ウィンドウで次の操作を行います。

    • Cloud Shell 情報ウィンドウで操作を進めます。
    • Cloud Shell が認証情報を使用して Google Cloud API を呼び出すことを承認します。

接続した時点で認証が完了しており、プロジェクトに各自の Project_ID が設定されます。出力には、このセッションの PROJECT_ID を宣言する次の行が含まれています。

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

gcloud は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。

  1. (省略可)次のコマンドを使用すると、有効なアカウント名を一覧表示できます。
gcloud auth list
  1. [承認] をクリックします。

出力:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (省略可)次のコマンドを使用すると、プロジェクト ID を一覧表示できます。
gcloud config list project

出力:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} 注: Google Cloud における gcloud ドキュメントの全文については、gcloud CLI の概要ガイドをご覧ください。 gcloud config set compute/region {{{project_0.default_region | "REGION"}}}

タスク 1. Google App Engine Admin API を有効にする

App Engine Admin API を使用すると、開発者は App Engine アプリケーションをプロビジョニングして管理できます。

  1. 左側のナビゲーション メニューで、[API とサービス] > [ライブラリ] をクリックします。
  2. 検索ボックスに「App Engine Admin API」と入力します。
  3. App Engine Admin API カードをクリックします。
  4. [有効にする] をクリックします。API を有効にするためのプロンプトが表示されない場合は、API はすでに有効なので何もする必要はありません。

タスク 2. Hello World アプリをダウンロードする

事前に用意されている Python 用のシンプルな Hello World アプリを使用して、アプリを Google Cloud にデプロイする方法を確認します。次の手順に沿って、Hello World を Google Cloud インスタンスにダウンロードしてください。

  1. 次のコマンドを入力して、Hello World サンプルアプリ リポジトリをご自身の Google Cloud インスタンスにコピーします。
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
  1. サンプルコードのあるディレクトリに移動します。
cd python-docs-samples/appengine/standard_python3/hello_world
  1. Python 環境を設定します。
sudo apt update sudo apt install -y python3-venv python3 -m venv myenv source myenv/bin/activate

タスク 3. アプリケーションをテストする

プリインストールされた App Engine SDK に含まれている Google Cloud 開発用サーバー(dev_appserver.py)を使用してアプリケーションをテストします。

  1. アプリケーションの app.yaml 構成ファイルが置かれた helloworld ディレクトリから、次のコマンドで Google Cloud 開発用サーバーを起動します。
flask --app main run

これで開発用サーバーが起動し、ポート 5000 でリクエストを待機します。

  1. [ウェブでプレビュー](ウェブ プレビュー アイコン)> [ポートを変更] をクリックして結果を表示します。

  2. ポート番号を「5000」に変更し、[変更してプレビュー] をクリックします。

    新しいブラウザ ウィンドウで次のように表示されます。

    ページに「Hello World!」と表示されているブラウザ ウィンドウ

  3. Ctrl + C キーを押してサーバーを停止します。

タスク 4. コードに変更を加える

このタスクでは、main.py を編集して「Hello World!」を「Hello, Cruel World!」に変更します。

  1. 次のコマンドを入力して、nano で main.py を開き、内容を編集します。
nano main.py
  1. 「Hello, World!」を「Hello, Cruel World!」に変更します。

  2. Ctrl + S キーを押してファイルを保存し、Ctrl + X キーを押して終了します。

  3. 次のコマンドを使用して、Google Cloud 開発用サーバーを再起動します。

flask --app main run
  1. Hello World! が表示されているブラウザを再読み込みするか、[ウェブでプレビュー](ウェブ プレビュー アイコン)> [ポート 5000 でプレビュー] をクリックして、結果を表示します。

    ページに「Hello, Cruel World!」と表示されているブラウザ ウィンドウ

  2. Ctrl + C キーを押してサーバーを停止します。

タスク 5. アプリをデプロイする

  1. 作成したアプリケーションのルート ディレクトリ(app.yaml ファイルが保存されている場所)から次のコマンドを実行し、そのアプリケーションを App Engine にデプロイします。
gcloud app deploy
  1. リージョンを表す番号()を入力します。
  1. App Engine アプリケーションが作成されます。

出力例:

Creating App Engine application in project [qwiklabs-gcp-233dca09c0ab577b] and region [{{{project_0.startup_script.app_region | "REGION"}}}]....done. Services to deploy: descriptor: [/home/gcpstaging8134_student/python-docs-samples/appengine/standard/hello_world/app.yaml] source: [/home/gcpstaging8134_student/python-docs-samples/appengine/standard/hello_world] target project: [qwiklabs-gcp-233dca09c0ab577b] target service: [default] target version: [20171117t072143] target url: [https://qwiklabs-gcp-233dca09c0ab577b.appspot.com] Do you want to continue (Y/n)?
  1. プロンプトが表示されたら「Y」と入力して詳細を確認し、サービスのデプロイを開始します。

出力例:

Beginning deployment of service [default]... Some files were skipped. Pass `--verbosity=info` to see which ones. You may also view the gcloud log file, found at [/tmp/tmp.dYC7xGu3oZ/logs/2017.11.17/07.18.27.372768.log]. ╔════════════════════════════════════════════════════════════╗ ╠═ Uploading 5 files to Google Cloud Storage ═╣ ╚════════════════════════════════════════════════════════════ File upload done. Updating service [default]...done. Waiting for operation [apps/qwiklabs-gcp-233dca09c0ab577b/operations/2e88ab76-33dc-4aed-93c4-fdd944a95ccf] to complete...done. Updating service [default]...done. Deployed service [default] to [https://qwiklabs-gcp-233dca09c0ab577b.appspot.com] You can stream logs from the command line by running: $ gcloud app logs tail -s default To view your application in the web browser run: $ gcloud app browse 注: アプリのデプロイ中に「P4SA を取得できません」というエラーが表示された場合は、上記のコマンドを再実行してください。

タスク 6. アプリケーションを表示する

  • ブラウザを起動するには、次のコマンドを入力してから、表示されたリンクをクリックします。
gcloud app browse

出力例(実際のリンクは異なることに注意してください):

Did not detect your browser. Go to this link to view your app: https://qwiklabs-gcp-233dca09c0ab577b.appspot.com

ページに「Hello, Cruel World!」と表示されているブラウザ ウィンドウ

アプリケーションがデプロイされ、ブラウザで短いメッセージを読むことができます。

[進行状況を確認] をクリックして、目標に沿って進行していることを確認します。

アプリをデプロイする

タスク 7. 理解度テスト

クイズに挑戦して Google Cloud Platform に関する知識をチェックしましょう(正しいものをすべて選択してください)。

お疲れさまでした

このラボでは、基本的な Python アプリを App Engine にデプロイする方法について学びました。

次のステップと詳細情報

Google Cloud トレーニングと認定資格

Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。

マニュアルの最終更新日: 2025 年 5 月 30 日

ラボの最終テスト日: 2025 年 5 月 30 日

Copyright 2026 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボを実行するには、シークレット モードまたはシークレット ブラウジング ウィンドウを使用することをおすすめします。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。