Cloud Run 인스턴스의 재시작 정책은 인스턴스를 다시 시작해야 하는지 여부와 시기를 결정합니다.
재시작 정책 옵션
다음 재시작 정책 중에서 선택하세요.
on-failure(기본값): 컨테이너가 0이 아닌 상태 코드로 종료되거나 컨테이너에 인프라 오류가 발생하면 인스턴스가 다시 시작됩니다. 다중 컨테이너 인스턴스의 경우 컨테이너가 실패하면 전체 인스턴스가 다시 시작됩니다.always: 컨테이너가 종료되면 인스턴스가 항상 다시 시작됩니다. 여기에는 코드0으로의 클린 종료가 포함됩니다.never: 인스턴스가 다시 시작되지 않습니다. 컨테이너가 종료되면 인스턴스가 즉시STOPPED또는FAILED상태로 전환됩니다.
인스턴스에 always 또는 on-failure 재시작 정책을 구성하면 인스턴스가 약 7일의 수명 주기가 끝날 때 자동으로 다시 시작되므로 다른 방식으로 중단되지 않는 한 무기한 실행됩니다.
필요한 역할
Cloud Run 인스턴스를 구성하고 배포하는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.
- Cloud Run 인스턴스에 대한 Cloud Run 개발자 (
roles/run.developer) 역할 - 서비스 계정 사용자 (
roles/iam.serviceAccountUser) 서비스 ID에 대한
Cloud Run과 연결된 IAM 역할 및 권한 목록은 다음 항목을 참조하세요. Cloud Run IAM 역할 및 Cloud Run IAM 권한 Cloud Run 인스턴스가 Google Cloud Cloud 클라이언트 라이브러리와 같은 API와 상호작용하는 경우에는 서비스 ID 구성 가이드를 참조하세요. 역할 부여에 대한 자세한 내용은 배포 권한 및 액세스 관리를 참조하세요.
재시작 정책 구성
Google Cloud CLI 또는 YAML을 사용하여 Cloud Run 인스턴스의 재시작 정책을 구성합니다.
gcloud
새 인스턴스를 배포할 때 재시작 정책을 지정하려면 다음 단계를 따르세요.
gcloud beta run instances deploy INSTANCE \ --image=IMAGE_URL \ --restart-policy=POLICY
기존 인스턴스의 재시작 정책을 업데이트하려면 다음 단계를 따르세요.
gcloud beta run instances update INSTANCE \ --restart-policy=POLICY
다음을 바꿉니다.
INSTANCE: 인스턴스 이름입니다.IMAGE_URL: 컨테이너 이미지에 대한 참조(예:us-docker.pkg.dev/cloudrun/container/hello:latest)입니다.POLICY: 적용할 재시작 정책입니다.on-failure,always,never중에서 선택합니다.
YAML
새 인스턴스를 만드는 경우에는 이 단계를 건너뜁니다. 기존 인스턴스를 업데이트하는 경우 YAML 구성을 다운로드합니다.
gcloud beta run instances describe INSTANCE --format export > instance.yaml
다음 예시에는 YAML 구성이 포함되어 있습니다.
apiVersion: run.googleapis.com/v1 kind: Instance metadata: name: INSTANCE annotations: run.googleapis.com/launch-stage: BETA spec: containers: - name: CONTAINER_NAME image: IMAGE_URL restartPolicy: POLICY
다음을 바꿉니다.
INSTANCE: Cloud Run 인스턴스의 이름입니다.CONTAINER_NAME: 컨테이너의 이름입니다.IMAGE_URL: 컨테이너 이미지에 대한 참조(예:us-docker.pkg.dev/cloudrun/container/hello:latest)입니다.POLICY: 적용할 재시작 정책입니다.on-failure,always,never중에서 선택합니다.
다음 명령어를 사용하여 인스턴스를 만들거나 업데이트합니다.
gcloud beta run instances replace instance.yaml