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
제공되지 않는 버전은 리소스를 소비하지 않으며 비용이 청구되지 않습니다.
따라서 비용이 발생하지 않으므로 이전 버전을 삭제할 필요가 없습니다.