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
Create a Kubernetes cluster
/ 20
Configure and Install Jenkins
/ 20
Create the production and canary deployments
/ 30
Build for the 'new-feature' branch
/ 10
Deploying a canary release
/ 10
Deploying to production
/ 10
Create a Kubernetes cluster
/ 20
Configure and Install Jenkins
/ 20
Create the production and canary deployments
/ 30
Build for the 'new-feature' branch
/ 10
Deploying a canary release
/ 10
Deploying to production
/ 10
建立 Kubernetes 叢集,並允許 Jenkins 存取 Google Cloud 服務和 Google Artifact Registry。
這個步驟可能需要幾分鐘才能完成。額外的範圍可讓 Jenkins 存取 Google Cloud 服務和 Google Artifact Registry。
這個步驟會在幾分鐘內完成。指定額外範圍的目的是允許 Jenkins 存取 Google Cloud 服務及 Google Artifact Registry。
點選「Check my progress」,確認工作已完成。如果已成功建立 Kubernetes 叢集,您就會看見評估分數。
Helm 是套件管理工具,能協助您輕鬆設定及部署 Kubernetes 應用程式。安裝 Jenkins 後,便可設定 CI/CD 管道。
在這項工作中,您會使用 Helm 從資訊套件存放區安裝 Jenkins。
安裝 Jenkins 時,可使用 values 做為範本,提供設定所需的值。
您將透過 values 檔案自動設定 Kubernetes
Cloud,並新增下列必要的外掛程式:
這樣 Jenkins 就能連線至您的叢集和 Google Cloud 專案。
這個指令會在幾分鐘內執行完畢。
點選「Check my progress」,確認工作已完成。如果已成功設定 Jenkins 資訊套件,您就會看見評估分數。
Running 狀態,且容器處於 READY 狀態:
輸出內容範例:
您應該會收到下列輸出內容:
輸出內容範例:
本實驗室中您使用了 Kubernetes 外掛程式,因此系統在 Jenkins Master 要求建構工具節點時,可視需要自動啟動對應的節點。完成工作後,這些節點就會自動關閉,資源也會加回叢集的資源集區。
請注意,這項服務會對所有與選取條件相符的 Pod,公開通訊埠
8080 和 50000,意即在 Kubernetes 叢集內公開 Jenkins
網頁 UI 和建構工具/代理程式註冊通訊埠。此外,jenkins-ui
服務會透過 ClusterIP 公開,不開放從叢集外部存取。
擷取管理員密碼並登入 Jenkins 介面。
在 Cloud Shell 動作列,依序點按「網頁預覽」圖示
和「Preview on port 8080」,進入 Jenkins 使用者介面:
如果出現提示訊息,請以
admin 這個使用者名稱和自動產生的密碼登入。
您成功在 Kubernetes 叢集中設定 Jenkins 了!在接下來的幾項工作中,Jenkins 將推動整個自動化 CI/CD 管道的運作。
在這項工作中,您會在持續部署管道部署範例應用程式
gceme。這個應用程式是以 Go 語言編寫,位於存放區的 sample-app
目錄。您在 Compute Engine 執行個體上執行 gceme
二進位檔時,應用程式會在資訊卡顯示執行個體的中繼資料。
這款應用程式類似微服務,支援兩種作業模式。
我們會將應用程式部署至下列兩種不同環境:
kubectl apply
指令,建立正式環境和初期測試環境的部署項目及相關服務:
點選「Check my progress」,確認工作已完成。如果已成功建立部署項目,您就會看見評估分數。
根據預設,系統只會部署一個前端副本。請使用
kubectl scale 指令,確保隨時都至少有 4 個副本正常運作。
輸出內容範例:
將外部 IP 貼到瀏覽器中,畫面上就會顯示資訊卡。您看到的頁面應與下圖類似:
在瀏覽器中開啟前端外部 IP 位址,確認兩項服務都正常運作。
執行下列指令,檢查服務的版本輸出結果 (應顯示為「1.0.0」):
您成功部署範例應用程式了!接下來要設定管道,以便穩定持續部署變更。
在這項工作中,您將在專用 Git 伺服器上設定 Git 存放區並建立 Jenkins 管道:
sample-app 目錄初始化為 Git 存放區:master 分支:設定憑證以允許 Jenkins 存取叢集並部署資源。
在 Jenkins 使用者介面的左側面板中,按一下 Manage Jenkins,然後按一下 Security 下方的 Credentials。
在 Stores scoped to Jenkins 下方,按一下 System。
按一下 Global credentials (unrestricted)。
按一下 Add Credentials。
在 Kind 選項中選取 Google Service Account from metadata,然後按一下 Next。
在 ID 欄位輸入您的專案 ID(
全域憑證已新增。
http://cd-jenkins:8080。
cd-jenkins-agent:50000。
前往 Jenkins 使用者介面,並按照下列步驟設定多分支管道工作:
在左側面板中,按一下 Jenkins > New Item。
輸入項目名稱 sample-app,選取 Multibranch Pipeline 選項,然後按一下 OK。
在下一頁的 Branch Sources 專區中,從 Add source 下拉式選單中選取 Git。
在 Project Repository 欄位中輸入存放區的複製網址:
http://[GIT_SERVER_IP]:3000/giteaadmin/sample-app.git,將 [GIT_SERVER_IP] 替換為您的 Git 伺服器 IP。
在 Credentials 下方維持選取 - none -。
在 Scan Multibranch Pipeline Triggers 專區下方,勾選 Periodically if not otherwise run 核取方塊,並將 Interval 值設為 1 minute。
將所有其他選項保留為預設值,然後按一下 Save。
完成這些步驟後,系統會執行名為
Branch indexing
的工作。這個中繼工作會識別存放區中的分支,並確保現有分支未發生變更。如果您在導覽列中按一下
sample-app,應該會看到 master 工作。
您已成功建立 Jenkins 管道!接下來,建立用於持續整合的開發環境。
開發分支版本是一組環境,開發人員會先在這裡測試程式碼變更,再提交出去並整合至正式網站。這些環境是應用程式的簡化版,但部署時仍須採用和正式環境一樣的機制。
如要從功能分支版本建立開發環境,可將該分支版本推送至 Git 伺服器,讓 Jenkins 部署環境。
定義該管道的 Jenkinsfile 是以
Jenkins Pipeline Groovy 語法編寫而成。使用
Jenkinsfile
可將整個建構管道編寫到同一個檔案中,而且該檔案會和原始碼放在一起。管道支援平行處理等強大功能,並要求使用者手動核准。
為確保管道正常運作,請修改 Jenkinsfile 並設定專案 ID。
vi 之類的終端機編輯器開啟 Jenkinsfile:
將 REPLACE_WITH_YOUR_PROJECT_ID 這個值改成您的
PROJECT_ID (PROJECT_ID 就是專案 ID,可在實驗室的
CONNECTION DETAILS 部分找到)。您也可以執行
gcloud config get-value project 來查詢該 ID。
將 CLUSTER_ZONE 的值變更為
gcloud config get compute/zone 來查詢這個值。
Jenkinsfile」檔案,按下 ESC 鍵,然後輸入下列內容 (適用於
vi 終端機編輯器):
現在您要將 gceme 資訊卡從藍色變更為橘色,實際體驗應用程式的變化過程。
html.go:<div class="card blue"> 改成:html.go 檔案,按下 ESC 鍵,然後輸入下列內容:main.go:將該行更新為下列內容:
在這項工作中,您將部署開發環境。
執行上述指令將開始建構開發環境。
將變更推送至 Git 存放區之後,請前往 Jenkins 使用者介面,您會看到
new-feature 分支版本的建構作業已啟動,而變更會在一分鐘內接收到。
kubectl --namespace=new-feature apply...」這則訊息。如果有即代表系統正在將 new-feature 分支版本部署至叢集。
如果 Build Executor 中未顯示任何內容,別擔心。只要前往 Jenkins
首頁 >「sample app」,就能確認 new-feature 管道是否已建立。
localhost,讓 kubectl Proxy
將要求轉送至服務,以便確認應用程式可正常存取:
您應該會收到「2.0.0」回應,也就是正在執行的版本。
如果收到類似下方的錯誤訊息:
curl 指令。看到下列輸出內容時,即可繼續操作:
到此開發環境已設定成功!接下來,您將延伸運用先前單元所學的知識,部署初期測試版來測試新功能。
點選「Check my progress」,確認工作已完成。如果已成功啟動 new-feature 分支版本的建構作業,您就會看見評估分數。
new-feature 分支版本
您已驗證應用程式在開發環境中執行的是最新程式碼,接下來要將該程式碼部署至初期測試環境。
2.0.0:
大功告成!您已部署初期測試版,接著要將新版本部署至正式環境。
點選「Check my progress」,確認工作已完成。如果已成功部署初期測試版,您就會看見評估分數。
您已成功部署初期測試版,而且未收到任何客訴,現在準備將新版本部署至正式環境中的剩餘機群。
在 Jenkins 中,您應該會看到 Master 管道已啟動。
點選「Check my progress」,確認工作已完成。如果已成功啟動 Master 管道,您就會看見評估分數。
1.0.0,請重新執行上方的指令。確認結果正常後,再按下
CTRL+C,停止執行這項指令。
輸出內容範例:
您也可以前往 gceme 應用程式顯示資訊卡的網站,應該會發現資訊卡已從藍色變成橘色。
輸出內容範例:
本實驗室介紹了幾個概念,下列選擇題可加深您的理解,盡力回答即可。
大功告成!
太棒了,您已成功將應用程式部署至正式環境。
本實作實驗室到此結束。您已順利在 Kubernetes Engine 部署並操作 Jenkins,建構能正常運作的持續推送軟體更新/持續部署管道。您在 Kubernetes Engine 中部署並設定重要的 DevOps 工具,以便用於正式環境,也實際操作 kubectl 指令列工具和 YAML 檔案中的部署設定。此外,您也初步瞭解如何設定 Jenkins 管道,支援開發/部署程序。有了這次的實作經驗,您應能放心在自己的 DevOps 環境中應用這些工具。
協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。
使用手冊上次更新日期:2026 年 5 月 20 日
實驗室上次測試日期:2026 年 2 月 26 日
Copyright 2026 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。
This content is not currently available
We can notify you via email when it becomes available
Great!
We can contact you via email if it becomes available
One lab at a time
Confirm to end all existing labs and start this one