當您部署到服務或變更服務的設定時,系統會建立不可變更的修訂版本。
修訂版須符合下列注意事項:
- 您可以指定新修訂版本是否接收所有、部分或完全不接收流量,也可以漸進式推出新修訂版本、在多個修訂版本之間拆分流量,以及從修訂版本復原。詳情請參閱「復原、漸進式推出及流量遷移」。
- 您可以選擇使用修訂版本標記來測試未提供流量的修訂版本。
- 您不必手動刪除修訂版本,但也可以這麼做。
- 未放送的修訂版本不會耗用任何資源,也不會產生費用。
- 每項服務最多可保留 1, 000 個修訂版本:如果超過這個上限,系統會自動刪除較舊的修訂版本。
- 系統會自動指派修訂版本尾碼。如果您想使用自己的版本附加字尾,可以使用 gcloud CLI 參數 --revision-suffix。
必要的角色
如要取得管理 Cloud Run 服務和修訂版本所需的權限,請要求管理員授予您 Cloud Run 服務的 Cloud Run 開發人員 (roles/run.developer
) IAM 角色。
如需與 Cloud Run 相關聯的 IAM 角色和權限清單,請參閱「Cloud Run IAM 角色」和「Cloud Run IAM 權限」。如果您的 Cloud Run 服務會與Google Cloud API 互動 (例如 Cloud 用戶端程式庫),請參閱服務身分設定指南。如要進一步瞭解如何授予角色,請參閱「部署權限」和「管理存取權」。
查看服務的修訂版本清單
控制台
在專案中查看修訂版本清單:
在服務清單中找出所需服務,然後按一下該服務。
按一下「Revisions」分頁,即可查看該服務的目前修訂版本清單。
gcloud
如要查看特定服務的修訂版本清單:
從專案可用服務清單中,尋找您的服務名稱。
gcloud run services list
使用下列指令來取得剛找到的服務的所有修訂版本:
gcloud run revisions list --service SERVICE --region REGION
取代
- SERVICE 改為您的服務名稱。
- REGION 改為服務的 Google Cloud 區域。
Cloud Code
如要透過 Cloud Code 查看修訂版本清單,請參閱 IntelliJ 和 Visual Studio Code 的 Cloud Run Explorer 指南。
用戶端程式庫
如要查看程式碼的修訂版本清單,請按照下列步驟操作:
REST API
如要查看修訂版本清單,請將 GET
HTTP 要求傳送至 Cloud Run Admin API revisions
端點。
例如使用 curl
:
curl -H "Content-Type: application/json" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -X GET \ -d '' \ https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/services/SERVICE-NAME/revisions
取代:
- ACCESS_TOKEN 具有有效存取權杖,且該帳戶具備查看修訂版本的 IAM 權限。舉例來說,如果您已登入 gcloud,可以使用
gcloud auth print-access-token
擷取存取權權杖。您可以在 Cloud Run 容器執行個體中,使用容器執行個體中繼資料伺服器擷取存取權杖。 - SERVICE-NAME 改為服務名稱。
- REGION 改為服務的 Google Cloud 區域。
- PROJECT-ID 與 Google Cloud 專案 ID。
查看修訂版本詳細資料
控制台
如要在專案中查看修訂版本的詳細資料:
在服務清單中選取所需服務。
按一下「Revisions」分頁,即可查看該服務的目前修訂版本清單。
選取您要的服務修訂版本:
查看最右側的「DETAILS」面板,瞭解修訂版本特定資訊,例如已部署容器映像檔的網址、配置的記憶體容量、環境變數,以及可能的建構和來源存放區資訊。
gcloud
如要在專案中查看修訂版本的詳細資料:
從專案可用服務清單中,尋找您的服務名稱。
gcloud run services list
使用下列指令取得剛查詢的服務的所有修訂版本:
gcloud run revisions list --service SERVICE --region REGION
取代
- SERVICE 改為您的服務名稱。
- REGION 改為服務的 Google Cloud 區域。
使用下列指令查看特定修訂版本的更多詳細資料:
取代gcloud run revisions describe REVISION --region REGION
- REVISION 改為您要進一步瞭解的修訂版本名稱。
- REGION 改為服務的 Google Cloud 區域。
您可以使用
--format
標記設定輸出格式。例如使用 YAML:gcloud run revisions describe REVISION --region REGION --format yaml
Cloud Code
如要透過 Cloud Code 查看修訂版本的詳細資料,請參閱 IntelliJ 和 Visual Studio Code 的 Cloud Run Explorer 指南。
用戶端程式庫
如要查看程式碼修訂版本的詳細資料:
REST API
如要查看修訂版本的詳細資料,請將 GET
HTTP 要求傳送至 Cloud Run Admin API revisions
端點。
例如使用 curl
:
curl -H "Content-Type: application/json" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -X GET \ -d '' \ https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/services/SERVICE-NAME/revisions/REVISION-NAME
取代:
- ACCESS_TOKEN 搭配有效的存取權杖,該帳戶具備查看服務詳細資料的 IAM 權限。舉例來說,如果您已登入 gcloud,可以使用
gcloud auth print-access-token
擷取存取權權杖。您可以在 Cloud Run 容器執行個體中,使用容器執行個體中繼資料伺服器擷取存取權杖。 - SERVICE-NAME 改為服務名稱。
- 將 REVISION-NAME 替換為修訂版本名稱。
- REGION 改為服務的 Google Cloud 區域。
- PROJECT-ID 與 Google Cloud 專案 ID。
請注意,非最新的修訂版本可能會顯示 RETIRED
狀態,這表示 Cloud Run 已淘汰該特定修訂版本所需的基礎架構。
關於「Details」面板中的建構和來源存放區資訊
如果已啟用 Artifact Analysis API,且容器是使用 Cloud Build 建構,則建構資訊會顯示在「Details」面板中。
此外,如果您使用 Cloud Build 觸發條件建構容器,來源存放區資訊也會顯示在「Details」面板中。
刪除修訂版本
刪除修訂版本的常見用途是確保特定修訂版本不會遭到誤用。
在下列情況下,您無法刪除修訂版本:
- 能夠接收流量,
- 這是服務的唯一修訂版本,
- 這是服務的最新修訂版本。
刪除修訂版本時,該修訂版本使用的容器映像檔並不會從 Container Registry 或 Artifact Registry 中自動刪除。如要從註冊資料庫刪除容器映像檔,請參閱 Container Registry 或 Artifact Registry 的刪除操作說明。
修訂版本一經刪除即無法復原。
您可以使用主控台或指令列:
控制台
如何刪除修訂版本
在服務清單中找出所需服務,然後按一下該服務。
按一下「Revisions」分頁,即可查看該服務的目前修訂版本清單。
找出要刪除的服務修訂版本。
按一下修訂版本左側的三點垂直橢圓,即可顯示「Delete」選單。
按一下「刪除」即可刪除修訂版本。
gcloud
如要刪除修訂版本,請使用下列指令:
gcloud run revisions delete REVISION --region REGION
取代
- REVISION 改為要刪除的修訂版本名稱。
- REGION 改為服務的 Google Cloud 區域。
用戶端程式庫
如要從程式碼中刪除修訂版本,請按照下列步驟操作:
REST API
如要刪除修訂版本,請將 DELETE
HTTP 要求傳送至 Cloud Run Admin API revisions
端點。
例如使用 curl
:
curl -H "Content-Type: application/json" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -X DELETE \ -d '' \ https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/services/SERVICE-NAME/revisions/REVISION-NAME
取代:
- ACCESS_TOKEN 使用有效的存取權杖,該存取權杖適用於具備刪除服務 IAM 權限的帳戶。舉例來說,如果您已登入 gcloud,可以使用
gcloud auth print-access-token
擷取存取權權杖。您可以在 Cloud Run 容器執行個體中,使用容器執行個體中繼資料伺服器擷取存取權杖。 - SERVICE-NAME 改為服務名稱。
- 將 REVISION-NAME 替換為修訂版本名稱。
- REGION 改為服務的 Google Cloud 區域。
- PROJECT-ID 與 Google Cloud 專案 ID。
後續步驟
部署修訂版本後,您可以執行下列操作: