設定僅限 OS 的執行階段

OS only 執行階段是與語言無關的一般用途執行階段,適用於 Cloud Run 來源部署作業。其中包含基本 Ubuntu 作業系統 (OS),不含任何語言專屬的執行階段元件。OS Only 執行階段可讓您從來源部署 Go 應用程式,以及 Dart 和 Go 等二進位檔。您也可以使用這個執行階段,從頭建構自己的應用程式映像檔並進行部署。

OS Only 執行階段與 Cloud Run 的基礎映像檔自動更新功能相容。也就是說,即使您未使用特定支援的語言執行階段,應用程式也會自動接收作業系統層級的安全性修補程式和更新。

支援的堆疊

OS only 執行階段適用於 google-24 堆疊。如要進一步瞭解可用的 OS Only 執行階段版本和支援時間表,請參閱「執行階段生命週期」。

已編譯的二進位檔

OS 專用執行階段可讓您部署預先編譯的二進位檔。您也可以使用執行階段別名指定基本映像檔。舉例來說,如要使用 google-24/osonly24 基本映像檔,請指定別名 osonly24

如果是編譯語言,請務必先建構以 Linux OS 為目標的二進位檔,再進行部署。舉例來說,如要編譯以 linux/amd64 為目標的 Go 應用程式,請執行下列指令:

GOOS="linux" GOARCH=amd64 go build main.go

部署至 Cloud Run

使用 gcloud beta run deploy 指令,將服務從來源部署至 Cloud Run。使用下列任一部署方法指定基本映像檔 (例如 osonly24):

使用建構版本

如要從來源建構 Go 應用程式並部署至 Cloud Run,請執行下列指令:

gcloud beta run deploy SERVICE \
--source . \
--base-image=osonly24 \
--project PROJECT_ID \
--automatic-updates

更改下列內容:

  • SERVICE:Cloud Run 服務的名稱。
  • PROJECT_ID: Google Cloud 專案 ID。

如要進一步瞭解如何從原始碼部署服務,請參閱從原始碼部署服務

不含建構版本

如要從來源部署至 Cloud Run,而不使用建構作業,請執行下列指令:

gcloud beta run deploy SERVICE \
--source . \
--no-build \
--base-image=osonly24 \
--project PROJECT_ID \
--command COMMAND

更改下列內容:

  • SERVICE:Cloud Run 服務的名稱。
  • PROJECT_ID: Google Cloud 專案 ID。
  • COMMAND:容器啟動時執行的指令,例如 ./main

如要進一步瞭解如何從原始碼部署服務,而不需建構,請參閱「從原始碼部署服務」。