Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Download the monolith code and build your container
/ 10
Create a kubernetes cluster and deploy the application
/ 20
Create a containerized version of orders and product Microservices
/ 20
Deploy the new microservices
/ 20
Create a containerized version of the Frontend microservice
/ 10
Deploy the Frontend microservice
/ 20
在挑戰研究室中,您會在特定情境下完成一系列任務。挑戰研究室不會提供逐步說明,您將運用從課程研究室學到的技巧,自行找出方法完成任務!自動評分系統 (如本頁所示) 將根據您是否正確完成任務來提供意見回饋。
在您完成任務的期間,挑戰研究室不會介紹新的 Google Cloud 概念。您須靈活運用所學技巧,例如變更預設值或詳讀並研究錯誤訊息,解決遇到的問題。
若想滿分達標,就必須在時限內成功完成所有任務!
這個實驗室適合「透過 Google Cloud 建構網站」課程的學員。準備迎接挑戰了嗎?
請詳閱以下操作說明。實驗室活動會計時,且中途無法暫停。點選「Start Lab」後就會開始計時,顯示可使用 Google Cloud 資源的時間。
您將在真正的雲端環境完成實作實驗室活動,而不是模擬或示範環境。為此,我們會提供新的暫時憑證,供您在實驗室活動期間登入及存取 Google Cloud。
為了順利完成這個實驗室,請先確認:
您剛在 FancyStore, Inc. 擔任新職務。
您的任務是將公司現有的單體式電子商務網站,拆分成邏輯上彼此獨立的一系列微服務。現有的單體式程式碼位於 GitHub 存放區,您需要將這個應用程式容器化並重構。
公司認為您具備執行這些工作所需的技能與知識,因此不會提供逐步指南。
前一個團隊因為負責單體式架構而過勞,已另謀高就 (他們現在經營薰衣草農場),因此上級要求您帶領這個團隊。您必須負責擷取原始碼、使用原始碼建構容器 (有位農夫留下一個 Dockerfile),然後將容器推送至 GKE。
首先,請建構、部署及測試單體式架構,確保原始碼沒有問題,接著將組成服務一一拆分成微服務 Deployment。
請務必遵守 FancyStore, Inc. 公司的標準,包括:
e2-medium 機型。您坐在桌前開啟新筆電,收到完成下列工作的要求。祝一切順利!
登入新專案並啟用 Cloud Shell。
首先,請複製團隊的 Git 存放區。專案的根目錄中有個「setup.sh」指令碼,您需要執行這個指令碼來建構單體式容器。
依序執行 setup.sh 指令碼和下列指令,確認 Cloud Shell 執行的是最新版 nodeJS:
您可以建構並推送幾個不同的專案。
將單體式應用程式版本 (剛好就放在 monolith 目錄) 推送至 Artifact Registry。~/monotlith-to-microservices/monolith 資料夾中有一個 Dockerfile,可用來建構應用程式容器。
建構時,必須在該單體式資料夾執行 Cloud Build,然後將容器推送至 Artifact Registry。
構件命名如下:
點選「Check my progress」,確認目標已達成。
建立好的映像檔已儲存在 Artifact Registry,接著要建立叢集來部署映像檔。
公司要求將所有資源部署在
根據下列設定建立叢集:
成功建構映像檔並啟動叢集後,現在可以部署應用程式了。
請將建構的映像檔部署至叢集,就能啟動並執行應用程式。不過,如果想開放外部存取,必須公開應用程式。團隊成員提到,應用程式在通訊埠 8080 執行,但您需要公開至通訊埠 80,使用者會更方便取用。
根據下列設定建立及公開 Deployment:
畫面應顯示如下:
點選「Check my progress」,確認目標已達成。
建構及部署完 Fancy Store 的單體式應用程式後,接著要開始拆分成微服務。
您已在 GKE 執行現有的單體式網站,現在可以著手將各項服務拆分成微服務。一般來說,規劃重點是判斷要將哪些服務拆得更小,這通常會根據應用程式的特定部分 (例如業務領域) 來決定。
為方便進行這項挑戰,讓我們快轉一下,假設您已成功將單體式應用程式拆分成一系列微服務:Orders、Products 和 Frontend。程式碼準備好了,現在要開始部署服務。
目前有三項服務需要拆分成各自的容器。您要將所有服務移至容器,因此必須追蹤下列各項服務的資訊:
以下是需要容器化的服務。
|
Orders 微服務 |
|
|
Products 微服務 |
|
點選「Check my progress」,確認目標已達成。
請按照部署
|
Orders 微服務 |
|
|
Products 微服務 |
|
您可以透過瀏覽器前往下列網址,確認部署成功,而且服務已公開:
http://ORDERS_EXTERNAL_IP/api/ordershttp://PRODUCTS_EXTERNAL_IP/api/products如果部署成功,每項服務都會傳回 JSON 字串。
點選「Check my progress」,確認目標已達成。
您已擷取 Orders 和 Products 微服務,再來需要將 Frontend 服務設為指向這兩項微服務,然後完成部署。
nano 編輯器,將本機網址替換為新 Products 微服務的 IP 位址:開啟編輯器後,檔案應如下所示。
輸出結果:
REACT_APP_PRODUCTS_URL 改成新格式,然後將 Orders 和 Products 微服務 IP 位址替換為以下內容:依序按下 CTRL+O 鍵、ENTER 鍵和 CTRL+X 鍵,在 nano 編輯器儲存檔案。
接著執行下列指令,重新建構 Frontend 應用程式,再將其容器化:
現在 Orders 和 Products 微服務已容器化並完成部署,Frontend 服務也已設為指向這些微服務,最後一步就是部署容器化的 Frontend。
請使用 Cloud Build 封裝 Frontend 服務的內容,然後推送至 Artifact Registry,如下所示:
這項程序可能需要幾分鐘,請耐心等候。
點選「Check my progress」,確認目標已達成。
請按照部署「Orders」和「Products」微服務時的程序,部署這個容器。
根據下列設定建立及公開 Deployment:
您可以透過瀏覽器前往 Frontend 服務的 IP 位址,確認部署成功,微服務也已正確公開。
畫面上應該會顯示 Fancy Store 首頁,當中有導向 Products 和 Orders 頁面的連結。這些頁面是由您新建的微服務支援。
點選「Check my progress」,確認目標已達成。
協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。
使用手冊上次更新日期:2026 年 3 月 10 日
實驗室上次測試日期:2026 年 3 月 10 日
Copyright 2026 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。
This content is not currently available
We will notify you via email when it becomes available
Great!
We will contact you via email if it becomes available
One lab at a time
Confirm to end all existing labs and start this one