ノードプール、ネットワークポリシー、IP masquerade設定を備えた、独自のデフォルト設定によるGoogle Kubernetes Engine(GKE)クラスターを構築するTerraformモジュール。
GoogleCloudPlatform/microservices-demo
Online Boutiqueは、Kubernetes上で動作し、gRPCで通信するGoogle Cloudの10〜11個のマイクロサービスからなるECデモアプリです。
- スター
- 21,159
- フォーク
- 10,650
- 未解決の Issue
- 105
- 最終コミット
- 11 日前
これは何?
Online Boutiqueは、複数の言語(Go、C#、Node.js、Python、Java)で書かれたマイクロサービス群として構築されたサンプルWebストアです。ユーザーは商品を閲覧してカートに追加し、購入手続きに進めます。各サービスはgRPCで相互に通信し、Protocol Buffersの定義もリポジトリに含まれています。
このプロジェクトは、アプリケーションをKubernetesとGoogle Cloudに移行する際のリファレンスとして作られています。単一のkubectlマニフェストを使ったGKEへのデプロイに対応し、IstioまたはCloud Service Mesh向けのKustomizeバリエーション、Terraformの設定、Cloud Operationsによるトレース機能も含まれています。MinikubeやKindなど、GKE以外のクラスターでの実行方法もドキュメント化されています。
いくつかのサービスはモックで、決済とメールはシミュレーションされ、配送も実際の運送業者には連絡しません。また、任意で利用できるGemini搭載のショッピングアシスタントと、買い物のトラフィックをシミュレートする負荷生成ツールも含まれています。
主な機能
- 01ログイン不要のWebフロントエンドで商品を閲覧し、カートに追加して購入手続きが可能
- 02Protocol Buffersの定義を備え、サービス間の通信にgRPCを使用
- 03単一のkubectlコマンドまたはTerraformでGKEにデプロイ可能
- 04IstioまたはCloud Service MeshとCloud Operationsのトレース機能を追加するKustomizeバリエーションを用意
- 05MinikubeやKindを含む、あらゆるKubernetesクラスターで実行可能
ユースケース
- Kubernetes上で多言語マイクロサービスシステムがどのように構成されるかを学ぶ
- 現実的なワークロードを使ってサービスメッシュやオブザーバビリティの構成をテストする
- 実際に動作するアプリでgRPCによるサービス間通信を試す
- チームにGKEへのデプロイを紹介する
クイックスタート
- 1
Google Cloud プロジェクトと、gcloud、git、kubectl があることを確認します
- 2
最新のメジャーバージョンをクローンします
git clone --depth 1 --branch v0 https://github.com/GoogleCloudPlatform/microservices-demo.git - 3
GKE Autopilot クラスターを作成します
gcloud container clusters create-auto online-boutique --project=${PROJECT_ID} --region=${REGION} --labels dev-tutorial=online-boutique - 4
Online Boutique をクラスターにデプロイします
kubectl apply -f ./release/kubernetes-manifests.yaml
使う前に知っておきたいこと
- Google Kubernetes Engine 向けに設計されており、クイックスタートには Google Cloud プロジェクトが必要です。
- デモアプリのため、決済、配送、メールの各サービスはモックです。
収録されている特集
トピック
よくある質問
- microservices-demo とは?
- Online Boutiqueは、Kubernetes上で動作し、gRPCで通信するGoogle Cloudの10〜11個のマイクロサービスからなるECデモアプリです。 Online Boutiqueは、複数の言語(Go、C#、Node.js、Python、Java)で書かれたマイクロサービス群として構築されたサンプルWebストアです。ユーザーは商品を閲覧してカートに追加し、購入手続きに進めます。各サービスはgRPCで相互に通信し、Protocol Buffersの定義もリポジトリに含まれています。
- microservices-demo は無料で使えますか?ライセンスは?
- microservices-demo は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- microservices-demo は今もメンテナンスされていますか?
- 活発にメンテナンス中。microservices-demo の最終コミットは 2026年10月27日 です。
- microservices-demo は何に使えますか?
- Kubernetes上で多言語マイクロサービスシステムがどのように構成されるかを学ぶ 現実的なワークロードを使ってサービスメッシュやオブザーバビリティの構成をテストする 実際に動作するアプリでgRPCによるサービス間通信を試す チームにGKEへのデプロイを紹介する
- microservices-demo のインストール方法は?
- Google Cloud プロジェクトと、gcloud、git、kubectl があることを確認します 最新のメジャーバージョンをクローンします: git clone --depth 1 --branch v0 https://github.com/GoogleCloudPlatform/microservices-demo.git GKE Autopilot クラスターを作成します: gcloud container clusters create-auto online-boutique --project=${PROJECT_ID} --region=${REGION} --labels dev-tutorial=online-boutique Online Boutique をクラスターにデプロイします: kubectl apply -f ./release/kubernetes-manifests.yaml
- microservices-demo はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/GoogleCloudPlatform/microservices-demo
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
OpenAIによる商品コンテンツ生成にも対応した、Azure Kubernetes Service(AKS)向けのリアルなオンラインストアをデプロイする多言語マイクロサービスのサンプルアプリです。
リポジトリ内で Gemini CLI を実行する GitHub Action。プルリクエストのレビュー、Issue のトリアージ、@gemini-cli へのリクエスト対応に使えます。
Envoy上でKubernetes Gateway APIを実装し、AIゲートウェイのユースケースにも対応するKubernetesネイティブなAPIゲートウェイ。
サービスベースのアーキテクチャと .NET Aspire で構築された、複数サービスで構成するショップの仕組みを学ぶための .NET 10 参照用 EC アプリケーション。
Gitリポジトリで定義された状態にKubernetesアプリケーションを同期する、宣言型のGitOps継続的デリバリーツールです。