在 Cloud Code for VS Code 中本機開發 Cloud Run 服務

您可以使用 Cloud Run 模擬器在本機開發服務,再將服務部署至 Cloud Run

設定服務以進行開發

如果您未定義 .vscode/launch.json 檔案,則「Run/Debug on Cloud Run Emulator」對話方塊可讓您設定啟動作業,然後將設定儲存至 .vscode/launch.json。如果已設定 .vscode/launch.json 檔案,可以直接編輯該檔案。

如要在本機執行服務,請指定設定:

  1. 開啟指令區塊面板 (按下 Ctrl/Cmd+Shift+P 鍵,或依序點選「View」(瀏覽) >「Command Palette」(指令面板)),然後執行「Run on Cloud Run Emulator」(在 Cloud Run 模擬器上執行) 指令。
  2. 在「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」(允許從區域網路上的其他裝置存取服務) 選項。
    • (選用) 如果您只想手動重建及執行服務,而非在變更時自動執行,請清除「變更時自動重建及重新執行」選項。

在本機執行服務

  1. 定義偏好設定後,按一下「Run」執行服務。

  2. 如果系統提示,請驗證憑證,在本機執行及偵錯應用程式

  3. 輸出視窗中監控部署狀態。

    部署作業完成後,開啟輸出視窗中顯示的網址,即可查看執行中的服務。

  4. 如要查看詳細記錄,請在輸出視窗中切換至詳細的 Cloud Run 檢視畫面。

    輸出窗格,輸出通道下拉式選單中選取「hello-world-5 - Detailed」

  5. 工作階段完成後,請按一下滑鼠右鍵,使用下列指令:

    • 查看記錄:使用 Cloud Code 記錄探索工具,開啟特定部署作業的應用程式記錄。
    • 開啟網址:在網路瀏覽器中開啟特定服務的應用程式服務網址。
  6. 如果您已在啟動設定中關閉監看模式,且想變更應用程式並重建及重新部署應用程式,請按一下 Cloud Code 狀態列,然後按一下「開啟監看模式」

  7. 如要停止部署作業,請按一下目前部署作業動作列中的「停止」按鈕。

    Cloud Run 部署作業的動作列

儲存密鑰

如果程式碼包含 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"
      }
    }
    

取得支援

如要提供意見回饋,請前往 GitHub 回報問題,或在 Stack Overflow 上提問。