Cloud Code 會自動安裝及管理 minikube。如果選擇不管理依附元件,請將 minikube 二進位檔新增至 PATH。
事前準備
- 安裝 Git,讓 Cloud Code 執行複製範例等 Git 作業。
- 如果尚未安裝 Cloud Code 外掛程式,請先安裝。
從範本建立應用程式
Cloud Code 隨附一系列程式碼範例範本,可協助您快速上手。如要使用現有範例建立 Kubernetes 應用程式,請按照下列步驟操作:
- 啟動指令面板 (按下
Ctrl/Cmd+Shift+P鍵,或依序點選「View」(瀏覽) >「Command Palette」(指令面板)),然後執行「Cloud Code: New Application」。 - 選取「Kubernetes application」(Kubernetes 應用程式) 做為範例類型。
- 依據您要使用的語言選取一個範本,選項有 NodeJS、Go、Python 和 Java。
從本機選擇偏好的應用程式位置,然後按一下「Create new application」(建立新的應用程式)儲存。
Cloud Code 會複製您選擇的範例,並開啟新的專案供您使用。
應用程式結構範例
所有語言範例應用程式的結構都近乎相同。這不僅是支援的結構,也是建議使用的入門結構。
舉例來說,Node.js 留言簿應用程式結構如下:
.
|---- .vscode
| └---- launch.json
|---- kubernetes-manifests
| |---- guestbook-backend.deployment.yaml
| |---- guestbook-backend.service.yaml
| |---- guestbook-frontend.deployment.yaml
| |---- guestbook-frontend.service.yaml
| |---- mongo.deployment.yaml
| └---- mongo.service.yaml
|---- src
| |---- backend
| | |---- Dockerfile
| | |---- index.js
| | |---- app.js
| | └---- package.json
| |---- frontend
| |---- Dockerfile
| |---- index.js
| | |---- app.js
| └---- package.json
└---- skaffold.yaml
進一步瞭解這個 Kubernetes Guestbook Node.js 範例應用程式,以下是一些重要檔案及其用途:
- .vscode
extensions.json:開啟此專案時,提示要求下載相關擴充功能launch.json:啟動設定 (類型為cloudcode.kubernetes),用於執行或偵錯 Kubernetes 應用程式tasks.json:Visual Studio Code 工作的設定資訊
- kubernetes-manifests
guestbook-backend.deployment.yaml:後端節點的 Pod 規格guestbook-frontend.deployment.yaml:前端節點的 Pod 規格mongo.deployment.yaml:資料庫的 Pod 規格
- src
(backend|frontend)/app.js:含網路伺服器邏輯的 Node.js 程式碼(backend|frontend)/Dockerfile:用於建構程式的容器映像檔
skaffold.yaml:Skaffold 的設定檔,Cloud Code 會使用這個檔案建構、部署及偵錯 Kubernetes 應用程式
使用自己的應用程式
如需使用現有專案的步驟,請參閱使用現有 Kubernetes 應用程式的 Cloud Code。
設定 Kubernetes 環境
執行應用程式前,請確保您已完成設定,可將應用程式部署至偏好的 Kubernetes 環境。您可以在設定中指定這項資訊。
設定
使用「Cloud Code: Develop on Kubernetes」(Cloud Code:在 Kubernetes 上開發) 執行設定時,您可以透過調整可用設定的方式自訂部署作業。
如要新增或編輯設定,請依序前往「Run」 >「Open Configurations」,然後編輯或新增設定。建立並部署至 minikube 叢集
啟動 minikube 叢集
Cloud Code 會自動安裝及管理 minikube。如果選擇不管理依附元件,請將 minikube 二進位檔新增至 PATH。
- 啟動指令面板 (按下
Ctrl/Cmd+Shift+P鍵,或依序點選「View」(瀏覽) >「Command Palette」(指令面板)),然後執行「Cloud Code: Control minikube」指令。 - 按一下「Choose a Minikube cluster (profile) to control」(選擇要控管的 Minikube 叢集 (設定檔)) 下方的「minikube」,然後按一下「Start」(開始)。
在 minikube 上執行
- 啟動「Command Palette」(指令面板),然後執行「Cloud Code: Run on Kubernetes」(Cloud Code:在 Kubernetes 上執行)。
- 按一下「Use current context (minikube) to run the app?」(使用目前的環境 (minikube) 執行應用程式?) 的「Yes」(是)。
Cloud Code 會在 minikube 叢集中執行應用程式。如果系統提示,請授權 Cloud Shell 使用您的憑證發出Google Cloud API 呼叫。
在 Cloud Code 的「Development sessions」(開發工作階段) 專區中,查看部署詳細資料。
按一下「Development sessions」(開發工作階段) 專區中的「Portforward URLs」(連接埠轉送網址),即可查看網址,然後按一下網址連結,在瀏覽器中開啟正在執行的應用程式。
開啟容器的互動式終端機
- 按一下
「Cloud Code」,然後展開「開發工作階段」探索工具。
- 依序展開「已部署的資源」和「Pod」。
- 在容器上按一下滑鼠右鍵,然後點選「Get Terminal」。
暫停或停止 Minikube 叢集
- 啟動指令區塊面板 (按下
Ctrl/Cmd+Shift+P鍵,或依序點選「View」(瀏覽) >「Command Palette」(指令面板)),然後執行「Cloud Code: Control minikube」指令。 - 「Choose a Minikube cluster (profile) to control」(選擇要控管的 Minikube 叢集 (設定檔)) 選項填入後,請按一下「minikube」,然後按一下「Stop」(停止) 或「Pause」(暫停)。
建立及新增其他雲端服務供應商的叢集
如果您使用的是地端部署叢集,或是來自其他供應商 (例如 Azure 或 AWS) 的叢集,請使用供應商的工具建立叢集,並將叢集新增至 KubeConfig。
使用其他本機叢集
除了 minikube 之外,如果您使用 Docker Desktop (適用於 Mac 或 Windows),也可以搭配 Cloud Code 使用。
如要讓 Cloud Code 搭配本機叢集運作,請確認預設設定 (例如 ~/.kube/config) 包含本機叢集。這個叢集必須設為目前的環境。
舉例來說,如果您使用 Docker Desktop 的本機叢集 docker-for-desktop,請執行下列指令來設定偏好的叢集:
kubectl config use-context docker-for-desktop
後續步驟
- 使用 同步處理檔案和熱重載 加快開發速度。
- 在 Cloud Code 中偵錯應用程式