您可以使用 Cloud Run 模擬器在本機開發服務,再將服務部署至 Cloud Run。
設定服務以進行開發
如果您未定義 .vscode/launch.json 檔案,則「Run/Debug on Cloud Run Emulator」對話方塊可讓您設定啟動作業,然後將設定儲存至 .vscode/launch.json。如果已設定 .vscode/launch.json 檔案,可以直接編輯該檔案。
如要在本機執行服務,請指定設定:
- 開啟指令區塊面板 (按下
Ctrl/Cmd+Shift+P鍵,或依序點選「View」(瀏覽) >「Command Palette」(指令面板)),然後執行「Run on Cloud Run Emulator」(在 Cloud Run 模擬器上執行) 指令。 在「Run/Debug on Cloud Run Emulator」(透過 Cloud Run 模擬器執行/偵錯) 對話方塊中,設定設定的規格:
- Cloud Run 模擬器僅適用於本機安裝的建構工具
- 選擇「Docker」或「Buildpacks」做為建構工具,然後指定來源
- (選用) 如要指定要傳遞至執行中容器的任何環境變數,請展開「Advanced Build Settings」(進階建構設定),然後按一下以指定鍵值組。
名稱 說明 範例 PORT HTTP 伺服器要監聽的通訊埠。 8080 K_SERVICE 要執行的 Cloud Run 服務名稱。 hello-world K_REVISION 正在執行的 Cloud Run 修訂版本名稱。 hello-world.1 K_CONFIGURATION 建立修訂版本的 Cloud Run 設定名稱。 hello-world - (選用) 如要指定 Cloud SQL 連線,請展開「Advanced Service Settings」(進階服務設定),按一下「Connections」(連線),然後每行指定一個 Cloud SQL 連線。
- (選用) 勾選「Make the service accessible from other devices on the local network」(允許從區域網路上的其他裝置存取服務) 選項。
- (選用) 如果您只想手動重建及執行服務,而非在變更時自動執行,請清除「變更時自動重建及重新執行」選項。
在本機執行服務
定義偏好設定後,按一下「Run」執行服務。
如果系統提示,請驗證憑證,在本機執行及偵錯應用程式。
在輸出視窗中監控部署狀態。
部署作業完成後,開啟輸出視窗中顯示的網址,即可查看執行中的服務。
如要查看詳細記錄,請在輸出視窗中切換至詳細的 Cloud Run 檢視畫面。

工作階段完成後,請按一下滑鼠右鍵,使用下列指令:
- 查看記錄:使用 Cloud Code 記錄探索工具,開啟特定部署作業的應用程式記錄。
- 開啟網址:在網路瀏覽器中開啟特定服務的應用程式服務網址。
如果您已在啟動設定中關閉監看模式,且想變更應用程式並重建及重新部署應用程式,請按一下 Cloud Code 狀態列,然後按一下「開啟監看模式」。
如要停止部署作業,請按一下目前部署作業動作列中的「停止」按鈕。

儲存密鑰
如果程式碼包含 API 金鑰、密碼和憑證等可能屬於機密的資料,將這些資料儲存為 Secret 有助於保護資料安全。Cloud Code Secret Manager 整合功能可讓您安全地儲存這些密鑰,並透過程式擷取。如要詳細瞭解如何使用 Cloud Code 建立及管理密鑰,請參閱 Secret Manager 指南。
自訂現有的 launch.json 設定
選擇執行動作時,Cloud Code 外掛程式會自動更新 launch.json 設定檔。如要進一步自訂服務的執行方式,可以在 .vscode/launch.json 檔案中指定下列欄位:
watch:監控工作區中的變更,並重新執行服務。預設為 True。
以下範例顯示手錶設定為
true:"watch": true,build:指定建構工具 (Docker、jibMaven、jibGradle 或 buildpacks),用來建構映像檔。
以下範例顯示 Docker 建構工具:
"build": { "docker": { "path": "Dockerfile" } },以下範例顯示建構包建構工具:
"build": { "buildpacks": { "path": "src/requirements.txt", "builder": "gcr.io/buildpacks/builder:v1" } },image:指定要使用的圖片名稱。
以下範例說明如何指定圖片名稱:
"image": "hello-world",service:指定要使用的 Cloud Run 服務。
以下範例說明如何指定服務名稱、通訊埠和資源限制:
"service": { "name": "hello-world", "containerPort": 8080, "resources": { "limits": { "memory": "256Mi" } } },debug:指定偵錯設定,例如遠端路徑對應,將本機路徑對應至遠端容器上的路徑。
下列範例顯示偵錯區段,指出來源檔案的位置:
"debug": { "sourceFileMap": { "${workspaceFolder}": "/app" } }