所有範例都包含 Dockerfile,因此您不必浪費時間弄清楚容器配置。 如果您要將現有服務移轉到 Cloud Run,您可能之前沒有使用過 Dockerfile。 沒關係! 雲端碼服務已支援 Google Cloud Buildpack 對象,允許您直接在程式碼中容器化服務。 不需要 Dockerfile。 Cloud Code 包含將服務部署到 Cloud Run 所需的一切。
本機環境中Cloud Run服務的開發與除錯
在將服務部署到 Google Cloud 之前,您可能希望在自己的電腦上試用該服務,以了解其工作原理、進行必要的更改並偵錯任何錯誤。 在開發過程中,必須不斷收集 Cloud Run 服務並將其部署到雲端中,以測試對代表性 Cloud Run 環境的變更。 您可以透過連接偵錯器在本機上偵錯程式碼,但是,由於這不是在整個容器層級完成的,因此您必須在本機安裝工具。 可以使用 Docker 在本地運行容器,但所需的命令太長且不能反映生產環境的具體情況。
Cloud Code 包含一個 Cloud Run 模擬器,可讓您在本機上開發和偵錯 Cloud Run 服務。 根據 研究根據 DevOps 研究與評估 (DORA) 進行的一項研究,表現出高軟體交付效率的團隊遇到變更失敗的頻率比效率較低的團隊低 7 倍。 憑藉在本地快速迭代程式碼並在代表性環境中調試程式碼的能力,您可以在開發早期快速發現錯誤,而不是在持續整合期間或更糟的是生產中。
在 Cloud Run 模擬器中執行程式碼時,您可以啟用檢視模式。 每次儲存檔案時,您的服務都會重新部署到模擬器中以進行持續開發。
首次啟動 Cloud Run 模擬器:
使用 Cloud Code 調試 Cloud Run 服務與在正常開發環境中調試相同。 在 VS Code 中執行「在 Cloud Run Emulator 上偵錯」命令(或選擇「Cloud Run:本機執行」配置並在 IntelliJ 環境中執行「偵錯」命令)並簡單設定程式碼斷點。 在容器中啟動斷點後,您可以在命令之間切換、將滑鼠懸停在變數屬性上以及檢查容器中的日誌。
在 VS Code 和 IntelliJ idea 中使用 Cloud Code 來偵錯 Cloud Run 服務:
在 Cloud Run 中部署服務
在本機測試了對 Cloud Run 服務程式碼所做的所有變更後,剩下要做的就是建立一個容器並將其部署到 Cloud Run。
從開發環境部署服務並不困難。 我們已新增在部署之前配置服務所需的所有參數。 當您按一下「部署」時,Cloud Code 將執行所有必要的命令來建立容器映像、將其部署到 Cloud Run 並將 URL 傳遞給服務。
在 Cloud Run 中部署服務:
管理 Cloud Run 服務
透過VS Code中的Cloud Code,您可以一鍵查看版本和服務記錄。 此功能已從 Cloud Console 移至開發環境,因此您無需不斷切換。 查看頁面準確顯示與 Cloud Run Explorer 中選擇的版本和服務相關的日誌。
您也可以在 Cloud Run Explorer 中快速尋找並查看有關專案中所有託管 Cloud Run 服務和適用於 Anthos 的 Cloud Run 服務的資訊。 在那裡您可以輕鬆了解重定向的流量百分比以及分配了多少 CPU 資源。