Skaffold

Skaffold 是一項指令列工具,可以自動化調度管理持續開發、持續整合 (CI) 和持續推送軟體更新 (CD) 技術,藉此提高開發人員的工作效率。

Skaffold 是 Google 的開放原始碼專案,提供可宣告的可攜式設定,以及可插入的架構。

Skaffold 受到開發人員喜愛

Skaffold 擁有超過 13,000 名 GitHub 人才及超過 300 名貢獻者 使用者,是活躍的大型開發人員社群。

原因何在?開發人員都喜歡 Skaffold 加速開發和推送程序。

開發運作研究顯示,如果團隊的部署頻率提高,且變更前置時間也比較短,機構成效會更好。

將 Skaffold 與 Google Cloud 搭配使用

瞭解 Skaffold 在各項 Google Cloud 產品 (例如 Cloud Code、Cloud Build 和 Google Cloud Deploy) 中的使用方式,以便進行開發自動化調度管理。

類別 情境 Skaffold 優勢
持續開發
在 JetBrains IDE 中執行 Kubernetes 應用程式並進行偵錯

瞭解 JetBrains IDE 適用的 Cloud Code 如何使用 Skaffold 在本機 minikube 叢集或 Google Kubernetes Engine 叢集中執行 Kubernetes 應用程式並進行偵錯。

  • 自動重新部署程式碼變更

  • 可讓 File Sync 立即部署程式碼變更,而無需重新建構

  • 在 Kubernetes 叢集中偵錯程式碼

  • 串流應用程式記錄檔,並將應用程式轉送到本機電腦

透過 VS Code 執行 Kubernetes 應用程式並進行偵錯

瞭解 VS Code 適用的 Cloud Code 如何使用 Skaffold 在 Google Kubernetes Engine 叢集中執行 Kubernetes 應用程式並進行偵錯。

  • 自動重新部署程式碼變更

  • 可讓 File Sync 立即部署程式碼變更,而無需重新建構

  • 在 Kubernetes 叢集中偵錯程式碼

  • 串流應用程式記錄檔,並將應用程式轉送到本機電腦

持續整合
在 Cloud Build 中透過 Skaffold 建構及測試

使用 Skaffold 映像檔在 Cloud Build 中建構步驟,即可在您的 Cloud Build CI/CD 管道中輕鬆使用 Skaffold 指令建構測試部署

持續推送軟體更新
使用 Google Cloud Deploy 將應用程式部署至 GKE

瞭解 Google Cloud Deploy 如何使用 Skaffold 將範例應用程式傳送至兩個 Google Kubernetes Engine 叢集序列。

  • 使用設定檔設定每個部署目標的不同資訊清單

  • 在設定中擷取應用程式的完整宣告狀態

  • 整合資訊清單管理工具,例如 HelmKustomize

端對端
使用 Skaffold 開發應用程式並推送至 GKE

使用一組經過整合的 Google Cloud 工具 (例如 Cloud CodeCloud BuildGoogle Cloud Deploy) 來設定並使用持續開發、持續整合 (CI) 以及持續推送軟體更新 (CD) 系統。您可以使用這個系統來開發應用程式並部署至 Google Kubernetes Engine (GKE)。

  • 提高開發與交付作業的一致性

  • 在不同環境中重複使用設定

  • 在工作流程早期套用管理機制,並在整個程序中一致

  • ...以及上述所有其他好處

類別