我使用 Google Cloud Run 託管我的容器化應用程式。為了節省成本,我想刪除應用程式 Docker 映像的除活動修訂版之外的所有內容。
我使用 GitLab 管道的作業來處理使用環境變數的憑證和設定。
我可以這樣列出我的修訂:
gcloud run revisions list --region="$GCP_REGION"
答案1
您的應用程式的最新版本是唯一有效的版本。利用這一事實,我們可以刪除所有其他修訂:
gcloud run revisions list --filter="status.conditions.type:Active AND status.conditions.status:'False'" --format='value(metadata.name)' | xargs -r -L1 gcloud run revisions delete --quiet
資料來源:
答案2
Bengt 之前的回應是完美的,但由於我無法發表評論,只是想補充一點,在我的例子中,您需要添加 --region 這是命令:
gcloud run revisions list --region=europe-west1 --filter="status.conditions.type:Active AND status.conditions.status:'False'" --format='value(metadata.name)' | xargs -r -L1 gcloud run revisions delete --region=europe-west1 --quiet
答案3
根據 Google 文檔,截至 2024 年 4 月https://cloud.google.com/run/docs/managing/revisions
非服務修訂不消耗任何資源且不計費。
因此實際上沒有必要刪除舊版本,因為它們不會產生任何成本