arrow_back

Docker イメージのビルドと Kubernetes クラスタへのデプロイ: チャレンジラボ

ログイン 参加
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Docker イメージのビルドと Kubernetes クラスタへのデプロイ: チャレンジラボ

Lab 1時間 30分 universal_currency_alt クレジット: 5 show_chart 中級
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP304

Google Cloud セルフペース ラボ

概要

チャレンジラボでは、シナリオと一連のタスクが提供されます。手順ガイドに沿って進める形式ではなく、コース内のラボで習得したスキルを駆使して、ご自身でタスクを完了していただきます。タスクが適切に完了したかどうかは、このページに表示される自動スコアリング システムで確認できます。

チャレンジラボは、Google Cloud の新しいコンセプトについて学習するためのものではありません。デフォルト値を変更する、エラー メッセージを読み調査を行ってミスを修正するなど、習得したスキルを応用する能力が求められます。

100% のスコアを達成するには、制限時間内に全タスクを完了する必要があります。

このラボは、Google Cloud Certified Professional Cloud Architect 認定試験に向けて準備している受講者を対象としています。ぜひチャレンジしてください。

チャレンジ シナリオ

あなたの会社の開発チームは、コンテナ化されたマイクロサービス アプローチをアプリケーション アーキテクチャに採用したいと考えています。あなたは、開発チームが用意してくれたサンプル アプリケーションをテストし、Google Kubernetes コンテナにデプロイできるかどうかを確認する必要があります。開発チームが用意してくれたのは Dockerfile とその関連コンテキストを備えた echo-web と呼ばれるシンプルな Go アプリケーションで、Docker イメージをすぐにビルドできるものです。

チャレンジ

デプロイをテストするには、サンプル アプリケーションをダウンロードし、Container Registry への格納を可能にするタグを使用して Docker コンテナ イメージをビルドする必要があります。イメージをビルドしたら、デプロイする前に Container Registry に push します。

準備したイメージを使用して Kubernetes クラスタを作成し、サンプル アプリケーションをクラスタにデプロイします。

注: ラボのアクティビティを正確にトラッキングするには、コンテナ リポジトリのイメージ名として「echo-app」を使用し、「echo-cluster」という名前を付けた Kubernetes クラスタを ゾーン内に作成する必要があります。また、Deployment 名は「echo-web」を使用する必要があります。

タスク 1. Kubernetes クラスタを作成する

  1. テスト環境の容量が限られているため、作成するテスト用 Kubernetes クラスタを 2 つの e2-standard-2 インスタンスに限定する必要があります。作成するクラスタの名前は必ず「echo-cluster」とします。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。Kubernetes クラスタを作成する

タスク 2. タグ付き Docker イメージをビルドする

Dockerfile とアプリケーション コンテキスト ファイルを含むサンプル アプリケーションは、echo-web.tar.gz というアーカイブに格納されています。このアーカイブはすでに、gs://[PROJECT_ID] というラボ プロジェクトに属する Cloud Storage バケットにコピーされています。

  • これを v1 というタグを付けてデプロイする必要があります。

タスク 3. イメージを Google Container Registry に push する

  • あなたの会社では、あらゆるプロジェクトで gcr.io という Container Registry ホスト名を必ず使用することになっています。サンプル アプリケーションは、実行先システムの構成データをレポートするシンプルなウェブ アプリケーションで、デフォルトで TCP ポート 8000 を使用するように構成されています。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。v1 タグが付いたアプリケーション イメージが gcr.io リポジトリに push されている

タスク 4. アプリケーションを Kubernetes クラスタにデプロイする

  • このアプリケーションはポート 8000 上の HTTP リクエストに応答するように構成されていますが、ポート 80 上の標準的なウェブ リクエストに応答するように Service を構成する必要があります。サンプル アプリケーション用のクラスタを構成する際は、Deployment 名を「echo-web」とします。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。アプリケーションがクラスタにデプロイされていることを確認する

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。Echo-app のようなリクエストに応答する Service が存在することをテストする

トラブルシューティング

504 ゲートウェイ タイムアウト エラーが発生する: 単にアプリケーションの初期化がまだ完了していないことを示している可能性もありますが、Dockerfile で設定されているデフォルト ポート(TCP ポート 8000)が、アプリケーション イメージをデプロイする際や外部アクセスを構成する際に選択したアプリケーション ポートと一致していないことが原因の場合もあります。

最後の 3 つの目標に対する評価スコアを獲得できなかった場合: Kubernetes クラスタを、ラボで指定されている ゾーン以外のゾーン内に作成したことが考えられます。

お疲れさまでした

これで完了です。このラボでは、サンプル アプリケーションを Kubernetes クラスタにデプロイしました。はじめに Kubernetes クラスタを作成し、次に Docker イメージをビルドして Container Registry に push しました。最後に、アプリケーションをクラスタにデプロイしました。

Cloud Architecture: Design, Implement, and Manage バッジ

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

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

マニュアルの最終更新日: 2024 年 3 月 13 日

マニュアルの最終テスト日: 2024 年 3 月 13 日

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