Cloud Run에 작업자 풀 배포

이 페이지에서는 컨테이너 이미지를 새 Cloud Run 작업자 풀 또는 기존 Cloud Run 작업자 풀의 새 버전에 배포하는 방법을 보여줍니다.

작업자 풀은 지속적인 백그라운드 작업을 실행하기 위해 특별히 설계된 Cloud Run 리소스입니다. Cloud Run 서비스와 달리 작업자 풀에는 부하 분산 엔드포인트/URL이 없으며 자동 확장을 지원하지 않습니다.

새 작업자 풀 배포에 대한 둘러보기 예시는 샘플 작업자 풀 배포 빠른 시작을 참조하세요.

필요한 역할

Cloud Run 작업자 풀을 배포하는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.

  • Cloud Run 작업자 풀에 대한 Cloud Run 개발자(roles/run.developer) 역할
  • 작업자 풀이 다른 Google Cloud 서비스와 상호작용하는 데 사용하는 ID에 대한 서비스 계정 사용자(roles/iam.serviceAccountUser) 역할
  • 배포된 컨테이너 이미지의 Artifact Registry 저장소에 대한 Artifact Registry 리더(roles/artifactregistry.reader)

Cloud Run과 연결된 IAM 역할 및 권한 목록은 Cloud Run IAM 역할Cloud Run IAM 권한을 참조하세요. Cloud Run 작업자 풀이 Cloud 클라이언트 라이브러리와 같은Google Cloud API와 상호작용하는 경우에는 서비스 ID 구성 가이드를 참조하세요. 역할 부여에 대한 자세한 내용은 배포 권한액세스 관리를 참조하세요.

지원되는 Container Registry 및 이미지

Artifact Registry 또는 Docker Hub에 저장된 컨테이너 이미지를 직접 사용할 수 있습니다. Artifact Registry를 사용하는 것이 좋습니다. Docker Hub 이미지는 최대 1시간 동안 캐시됩니다.

Artifact Registry 원격 저장소를 설정하여 다른 공개 또는 비공개 레지스트리(예: JFrog Artifactory, Nexus 또는 GitHub Container Registry)의 컨테이너 이미지를 사용할 수 있습니다.

Docker 공식 이미지 또는 Docker 스폰서 OSS 이미지와 같이 인기 있는 컨테이너 이미지를 배포하기 위해서는 Docker Hub만 고려해야 합니다. 가용성을 높이려면 Artifact Registry 원격 저장소를 사용하여 이러한 Docker Hub 이미지를 배포하는 것이 좋습니다.

Cloud Run은 Docker Hub 또는 외부 레지스트리가 있는 Artifact Registry 원격 저장소에서 배포할 때 9.9GB를 초과하는 컨테이너 이미지 레이어를 지원하지 않습니다.

작업자 풀 배포

다음과 같은 방법으로 작업자 풀을 배포할 수 있습니다.

새 작업자 풀 배포

태그(예: us-docker.pkg.dev/my-project/container/my-image:latest) 또는 정확한 다이제스트(예: us-docker.pkg.dev/my-project/container/my-image@sha256:41f34ab970ee...)로 컨테이너 이미지를 지정할 수 있습니다.

작업자 풀을 처음 배포하면 첫 번째 버전이 생성됩니다. 버전은 변경할 수 없습니다. 컨테이너 이미지 태그로 배포를 수행할 때는 이것이 다이제스트로 확인되고, 버전에는 항상 이 특정 다이제스트가 제공됩니다.

Google Cloud 콘솔, Google Cloud CLI, Terraform 또는 REST API를 사용하여 다음 안내를 따르세요.

콘솔

  1. Google Cloud 콘솔에서 Cloud Run으로 이동합니다.

    Cloud Run으로 이동

  2. 메뉴에서 작업자 풀을 선택하고 컨테이너 배포를 클릭하여 작업자 풀 만들기 양식을 표시합니다.

    1. 양식에서 컨테이너 이미지를 지정합니다.

    2. 작업자 풀 이름을 입력합니다. 작업자 풀 이름은 49자 이하여야 하며 리전 및 프로젝트별로 고유해야 합니다. 프로젝트의 기존 서비스 이름과 동일한 이름을 공유할 수 없습니다. 작업자 풀 이름은 나중에 변경할 수 없으며 공개적으로 표시됩니다.

    3. 작업자를 배치할 리전을 선택합니다. 리전 선택기는 가격 등급을 나타내고 탄소 배출량이 가장 낮은 리전을 강조표시합니다.

    4. 확장에서 작업자 풀의 인스턴스 수를 지정합니다.

  3. 컨테이너, 볼륨, 네트워킹, 보안을 클릭하여 해당 탭에서 다른 선택적 설정을 지정합니다.

  4. 작업자 풀 구성을 마쳤으면 만들기를 클릭하여 이미지를 Cloud Run에 배포하고 배포가 완료되도록 기다립니다.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 작업자 풀 컨테이너 이미지를 배포하려면 다음 안내를 따르세요.

    1. 다음 명령어를 실행합니다.

      gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL 

      다음을 바꿉니다.

      • WORKER_POOL: 배포할 작업자 풀의 이름입니다. 작업자 풀이 아직 없으면 배포 중에 이 명령어로 작업자 풀이 생성됩니다. 이 파라미터를 완전히 생략할 수 있지만 생략하면 작업자 풀 이름을 입력하라는 메시지가 표시됩니다. 작업자 풀 이름은 49자(영문 기준) 이하여야 하며, 리전 및 프로젝트별로 고유한 이름을 사용해야 하고, 프로젝트의 기존 서비스 이름과 동일한 이름을 공유해서는 안 됩니다.
      • IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest)입니다. --image 플래그를 제공하지 않으면 배포 명령어가 소스 코드에서 배포를 시도합니다.
    2. 배포가 완료될 때까지 기다립니다. 성공적으로 완료되면 Cloud Run에 배포된 작업자 풀에 관한 버전 정보와 함께 성공 메시지가 표시됩니다.

      run/region gcloud 속성을 사용하여 설정한 위치와 다른 위치에 배포하려면 다음을 사용합니다.

      gcloud beta run worker-pools deploy WORKER_POOL --region REGION
  3. Terraform

    Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.

    resource "google_cloud_run_v2_worker_pool" "default" {
      name     = "WORKER_POOL"
      location = "REGION"
      launch_stage = "BETA"
    
      template {
        containers {
          image = "IMAGE_URL"
        }
      }
    }
    

    다음을 바꿉니다.

    • WORKER_POOL: 작업자 풀의 이름입니다.
    • REGION: Google Cloud 리전(예: europe-west1).
    • IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest)입니다.

    REST API

    새 작업자 풀을 배포하려면 POST HTTP 요청을 Cloud Run Admin API 작업자 풀 create 엔드포인트로 보냅니다.

    예를 들어 다음과 같이 curl을 사용합니다.

    curl -H "Content-Type: application/json" \
      -H "Authorization: Bearer ACCESS_TOKEN" \
      -X POST \
      -d '{"launchStage":"BETA",template: {containers: [{image: "IMAGE_URL"}]}}' \
      https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/workerPools?workerPoolId=WORKER_POOL

    다음을 바꿉니다.

    • ACCESS_TOKEN: 서비스를 배포할 수 있는 IAM 권한이 있는 계정의 유효한 액세스 토큰입니다. 예를 들어 gcloud에 로그인한 경우 gcloud auth print-access-token을 사용하여 액세스 토큰을 검색할 수 있습니다. Cloud Run 컨테이너 인스턴스 내에서 컨테이너 인스턴스 메타데이터 서버를 사용하여 액세스 토큰을 검색할 수 있습니다.
    • IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest)입니다.
    • REGION: Google Cloud 리전(예: europe-west1).
    • PROJECT_ID: Google Cloud 프로젝트 ID
      • WORKER_POOL: 작업자 풀의 이름입니다.

Cloud Run 위치

Cloud Run은 리전을 기반으로 합니다. 즉, Cloud Run 서비스를 실행하는 인프라가 특정 리전에 위치해 있으며 해당 리전 내의 모든 영역에서 중복으로 사용할 수 있도록 Google이 관리합니다.

Cloud Run 서비스를 실행하는 리전을 선택하는 데 있어 중요한 기준은 지연 시간, 가용성 또는 내구성 요구사항입니다. 일반적으로 사용자와 가장 가까운 리전을 선택할 수 있지만 Cloud Run 서비스에서 사용하는 다른 Google Cloud제품 위치도 고려해야 합니다. 여러 위치에서 Google Cloud 제품을 함께 사용하면 서비스 지연 시간과 비용이 영향을 받을 수 있습니다.

Cloud Run은 다음 리전에서 사용할 수 있습니다.

등급 1 가격 적용

  • asia-east1(타이완)
  • asia-northeast1(도쿄)
  • asia-northeast2(오사카)
  • asia-south1(인도 뭄바이)
  • europe-north1(핀란드) 잎 아이콘 낮은 CO2
  • europe-north2(스톡홀름) 잎 아이콘 낮은 CO2
  • europe-southwest1 (마드리드) 잎 아이콘 낮은 CO2
  • europe-west1 (벨기에) 잎 아이콘 낮은 CO2
  • europe-west4(네덜란드) 잎 아이콘 낮은 CO2
  • europe-west8 (밀라노)
  • europe-west9 (파리) 잎 아이콘 낮은 CO2
  • me-west1 (텔아비브)
  • northamerica-south1 (멕시코)
  • us-central1 (아이오와) 잎 아이콘 낮은 CO2
  • us-east1(사우스캐롤라이나)
  • us-east4(북 버지니아)
  • us-east5 (콜럼버스)
  • us-south1 (댈러스) 잎 아이콘 낮은 CO2
  • us-west1 (오리건) 잎 아이콘 낮은 CO2

등급 2 가격 적용

  • africa-south1 (요하네스버그)
  • asia-east2(홍콩)
  • asia-northeast3(대한민국 서울)
  • asia-southeast1(싱가포르)
  • asia-southeast2 (자카르타)
  • asia-south2(인도 델리)
  • australia-southeast1(시드니)
  • australia-southeast2(멜버른)
  • europe-central2(폴란드 바르샤바)
  • europe-west10 (베를린)
  • europe-west12 (토리노)
  • europe-west2(영국 런던) 잎 아이콘 낮은 CO2
  • europe-west3(독일 프랑크푸르트)
  • europe-west6 (스위스 취리히) 잎 아이콘 낮은 CO2
  • me-central1 (도하)
  • me-central2 (담맘)
  • northamerica-northeast1 (몬트리올) 잎 아이콘 낮은 CO2
  • northamerica-northeast2 (토론토) 잎 아이콘 낮은 CO2
  • southamerica-east1 (브라질 상파울루) 잎 아이콘 낮은 CO2
  • southamerica-west1 (칠레 산티아고) 잎 아이콘 낮은 CO2
  • us-west2(로스앤젤레스)
  • us-west3(솔트레이크시티)
  • us-west4(라스베이거스)

Cloud Run 서비스를 이미 만들었다면 Google Cloud 콘솔의 Cloud Run 대시보드에서 리전을 확인할 수 있습니다.

기존 작업자 풀의 새 버전 배포

작업자 풀의 구성 설정을 변경하면 컨테이너 이미지가 변경되지 않아도 새 버전이 생성됩니다. 생성된 각 버전은 변경할 수 없습니다.

컨테이너 이미지는 배포 시 Cloud Run에서 가져옵니다. Cloud Run은 버전에서 이 컨테이너 이미지 사본을 사용하는 한 이를 유지합니다.

Google Cloud 콘솔, Google Cloud CLI, Terraform 또는 REST API를 사용하여 다음 안내를 따르세요.

콘솔

  1. Google Cloud 콘솔에서 Cloud Run으로 이동합니다.

    Cloud Run으로 이동

  2. 메뉴에서 작업자 풀을 선택하고 업데이트할 작업자 풀을 선택한 다음 새 버전 수정 및 배포를 클릭하여 작업자 풀 버전 배포 양식을 표시합니다.

    1. 필요한 경우 배포할 새 컨테이너 이미지의 URL을 지정합니다.

    2. 필요에 따라 컨테이너를 구성합니다.

    3. 필요한 경우 작업자 풀의 인스턴스 수를 업데이트합니다.

  3. 필요한 경우 컨테이너, 볼륨, 네트워킹, 보안을 클릭하여 해당 탭에서 다른 선택적 설정을 지정합니다.

  4. 작업자 풀 업데이트를 완료했으면 배포를 클릭합니다.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 컨테이너 이미지를 배포하려면 다음 안내를 따르세요.

    1. 다음 명령어를 실행합니다.

      gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL 

      다음을 바꿉니다.

      • WORKER_POOL: 배포할 작업자 풀의 이름입니다. 작업자 풀이 아직 없으면 배포 중에 이 명령어로 작업자 풀이 생성됩니다. 이 파라미터를 완전히 생략할 수 있지만 생략하면 작업자 풀 이름을 입력하라는 메시지가 표시됩니다. 작업자 풀 이름은 49자(영문 기준) 이하여야 하며, 리전 및 프로젝트별로 고유한 이름을 사용해야 하고, 프로젝트의 기존 서비스 이름과 동일한 이름을 공유해서는 안 됩니다.
      • IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest)입니다. --image 플래그를 제공하지 않으면 배포 명령어가 소스 코드에서 배포를 시도합니다.

      새 버전의 경우 버전 서픽스가 자동으로 할당됩니다. 자체 버전 서픽스를 제공하려면 gcloud CLI 파라미터 --revision-suffix를 사용합니다.

    2. 배포가 완료될 때까지 기다립니다. 성공적으로 완료되면 Cloud Run에 배포된 작업자 풀에 관한 버전 정보와 함께 성공 메시지가 표시됩니다.

  3. YAML

    1. 작업자 풀 YAML 구성을 다운로드합니다.

      gcloud beta run worker-pools describe WORKER_POOL --format export > workerpool.yaml
    2. 구성 파일을 변경합니다.

    3. 다음 명령어를 사용하여 작업자 풀을 업데이트합니다.

      gcloud beta run worker-pools replace workerpool.yaml

    Terraform

    새 작업자 풀 배포 예시에 설명된 대로 Terraform을 설정했는지 확인합니다.

    1. 구성 파일을 변경합니다.

    2. Terraform 구성을 적용합니다.

      terraform apply

      yes를 입력하여 기술된 작업 적용을 확인합니다.

    REST API

    새 작업자 풀을 배포하려면 PATCH HTTP 요청을 Cloud Run Admin API 작업자 풀 엔드포인트로 보냅니다.

    시스템에서 이전에 배포된 수정 버전의 변경사항을 감지하지 못하더라도 템플릿에서 새 수정 버전을 만들려면 forceNewRevision 쿼리 매개변수를 true로 설정하세요.

    예를 들어 다음과 같이 curl을 사용합니다.

    curl -H "Content-Type: application/json" \
      -H "Authorization: Bearer ACCESS_TOKEN" \
      -X PATCH \
      -d '{"launchStage":"BETA",template: {containers: [{image: "IMAGE_URL"}]}}' \
      https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/workerPools/WORKER_POOL>?forceNewRevision=true

    다음을 바꿉니다.

    • ACCESS_TOKEN: 서비스를 배포할 수 있는 IAM 권한이 있는 계정의 유효한 액세스 토큰입니다. 예를 들어 gcloud에 로그인한 경우 gcloud auth print-access-token을 사용하여 액세스 토큰을 검색할 수 있습니다. Cloud Run 컨테이너 인스턴스 내에서 컨테이너 인스턴스 메타데이터 서버를 사용하여 액세스 토큰을 검색할 수 있습니다.
    • IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest)입니다.
    • REGION: Google Cloud 리전(예: europe-west1).
    • PROJECT_ID: Google Cloud 프로젝트 ID
    • WORKER_POOL: 배포할 작업자 풀의 이름입니다.

다른 Google Cloud 프로젝트의 이미지 배포

다른 Google Cloud 프로젝트의 이미지를 배포하려면 사용자 또는 관리자가 배포자 계정과 Cloud Run 서비스 에이전트에 필요한 IAM 역할을 부여해야 합니다.

배포자 계정에 필요한 역할은 필수 역할을 참고하세요.

Cloud Run 서비스 에이전트에 필요한 역할을 부여하려면 다음 안내를 참고하세요.

  1. Google Cloud 콘솔에서 Cloud Run 작업자 풀의 프로젝트를 엽니다.

    IAM 페이지로 이동

  2. Google 제공 역할 부여 포함을 선택합니다.

  3. Cloud Run 서비스 에이전트의 이메일을 복사합니다. 여기에는 @serverless-robot-prod.iam.gserviceaccount.com 서픽스가 포함됩니다.

  4. 사용하려는 Container Registry를 소유하는 프로젝트를 엽니다.

    IAM 페이지로 이동

  5. 추가를 클릭하여 새로운 주 구성원을 추가합니다.

  6. 새 주 구성원 필드에 앞에서 복사한 서비스 계정의 이메일을 붙여넣습니다.

  7. Container Registry를 사용하는 경우 역할 선택 드롭다운 메뉴에서 스토리지 -> 스토리지 객체 뷰어 역할을 선택합니다. Artifact Registry를 사용하는 경우 Artifact Registry -> Artifact Registry 리더 역할을 선택합니다.

  8. Cloud Run 작업자 풀이 포함된 프로젝트에 컨테이너 이미지를 배포합니다.

다른 레지스트리의 이미지 배포

Artifact Registry 또는 Docker Hub에 저장되지 않은 공개 또는 비공개 컨테이너 이미지를 배포하려면 Artifact Registry 원격 저장소설정합니다.

Artifact Registry 원격 저장소를 사용하면 다음 작업을 할 수 있습니다.

  • 공개 컨테이너 이미지(예: GitHub Container Registry(ghcr.io))를 배포합니다.
  • 인증이 필요한 비공개 저장소의 컨테이너 이미지를 배포합니다(예: JFrog Artifactory 또는 Nexus).

Artifact Registry 원격 저장소를 사용할 수 없는 경우 docker push를 사용하여 Cloud Run에 배포하여 컨테이너 이미지를 임시로 가져오고 Artifact Registry에 푸시할 수 있습니다. Cloud Run은 배포 중에 컨테이너 이미지를 가져오며, 이후에 Artifact Registry에서 이미지를 삭제할 수 있습니다.

작업자 풀에 여러 컨테이너(사이드카) 배포

사이드카가 있는 Cloud Run 배포에는 기본 작업자 풀 컨테이너 하나와 사이드카 컨테이너가 하나 이상 있습니다. 사이드카는 localhost 포트를 사용하여 서로 그리고 작업자 풀 컨테이너와 통신할 수 있습니다. localhost 포트는 사용 중인 컨테이너에 따라 달라집니다.

작업자 풀 컨테이너를 포함하여 인스턴스당 최대 10개까지 컨테이너를 배포할 수 있습니다. 인스턴스 내에 있는 모든 컨테이너는 같은 네트워크 네임스페이스를 공유하며 메모리 내 공유 볼륨을 사용하여 파일을 공유할 수도 있습니다.

커스텀 조직 정책을 만들어 모든 배포에 특정 사이드카가 사용되도록 지정할 수 있습니다.

사이드카 컨테이너로 서비스 배포

Cloud Run 작업자 풀에 컨테이너를 여러 개 배포하려면 Google Cloud CLI, YAML 또는 Terraform을 사용하여 다음 안내를 따르세요.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 작업자 풀에 컨테이너 여러 개를 배포하려면 다음 명령어를 실행합니다.

    gcloud beta run worker-pools deploy WORKER_POOL \
     --container WORKER_POOL_CONTAINER_NAME \
     --image='WORKER_POOL_IMAGE' \
     --container SIDECAR_CONTAINER_NAME \
     --image='SIDECAR_IMAGE'

    다음을 바꿉니다.

    • WORKER_POOL: 배포할 작업자 풀의 이름입니다. 이 파라미터를 생략하면 작업자 풀 이름을 입력하라는 메시지가 표시됩니다.
    • WORKER_POOL_CONTAINER_NAME: 작업자 풀 컨테이너의 이름입니다.
    • IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest)입니다.
    • SIDECAR_CONTAINER_NAME: 사이드카 컨테이너의 이름입니다(예: sidecar).
    • SIDECAR_IMAGE: 사이드카 컨테이너 이미지에 대한 참조입니다.

    배포 명령어에서 각 컨테이너를 구성하려면 각 컨테이너 구성을 container 파라미터 다음에 제공합니다. 예를 들면 다음과 같습니다.

    gcloud beta run worker-pools deploy WORKER_POOL \
      --container CONTAINER_1_NAME \
      --image='WORKER_POOL_IMAGE' \
      --set-env-vars=KEY=VALUE \
      --container SIDECAR_CONTAINER_NAME \
      --image='SIDECAR_IMAGE' \
      --set-env-vars=KEY_N=VALUE_N
  3. 배포가 완료될 때까지 기다립니다. 성공적으로 완료되면 Cloud Run에 성공 메시지가 표시됩니다.

  4. YAML

    1. 새 작업자 풀을 만드는 경우에는 이 단계를 건너뜁니다. 기존 작업자 풀을 업데이트하는 경우 YAML 구성을 다운로드합니다.

      gcloud beta run worker-pools describe WORKER_POOL --format export > workerpool.yaml
    2. 다음 예시에는 YAML 구성이 포함되어 있습니다.

      apiVersion: run.googleapis.com/v1
      kind: WorkerPool
      metadata:
        name: WORKER_POOL
        annotations:
          run.googleapis.com/launch-stage: BETA
      spec:
        template:
          spec:
            containers:
            - name: CONTAINER_NAME
              image: IMAGE_URL
            containers:
            - name: SIDECAR_CONTAINER_NAME
              image: SIDECAR_IMAGE_URL

      다음을 바꿉니다.

      • WORKER_POOL: Cloud Run 작업자 풀의 이름
      • CONTAINER_NAME: 작업자 풀 컨테이너의 이름입니다.
      • IMAGE_URL을 작업자 풀이 포함된 컨테이너 이미지에 대한 참조로 바꿉니다(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest).
      • SIDECAR_CONTAINER_NAME: 사이드카 컨테이너의 이름(예: sidecar)
      • SIDECAR_CONTAINER_IMAGE: 사이드카 컨테이너 이미지에 대한 참조입니다.
    3. 다음 명령어를 사용하여 작업자 풀을 만들거나 업데이트합니다.

      gcloud beta run worker-pools replace workerpool.yaml

    Terraform

    Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.

    resource "google_cloud_run_v2_worker_pool" "default" {
      name     = "WORKER_POOL"
      location = "REGION"
      launch_stage = "BETA"
    
      template {
        containers {
          name = "CONTAINER_NAME"
          image = "IMAGE_URL"
        }
        containers {
          name = "SIDECAR_CONTAINER_NAME"
          image = "SIDECAR_IMAGE_URL"
        }
      }
    }
    

    다음을 바꿉니다.

    • WORKER_POOL: 작업자 풀의 이름입니다.
    • REGION: Google Cloud 리전(예: europe-west1).
    • CONTAINER_NAME: 컨테이너의 이름.
    • IMAGE_URL: 작업자 풀이 포함된 컨테이너 이미지에 대한 참조(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest)입니다.
    • SIDECAR_CONTAINER_NAME: 사이드카 컨테이너의 이름입니다.
    • SIDECAR_IMAGE_URL: 사이드카 컨테이너 이미지에 대한 참조입니다.

사이드카 포함 배포에서 사용 가능한 기능

배포에서 다른 컨테이너보다 먼저 일부 컨테이너를 시작해야 하는 종속 항목이 있으면 여러 컨테이너가 포함된 배포 내에서 컨테이너 시작 순서를 지정할 수 있습니다.

다른 컨테이너에 종속된 컨테이너가 있으면 배포에서 상태 점검을 사용해야 합니다. 상태 점검을 사용하면 Cloud Run이 컨테이너 시작 순서를 따르고 다음 컨테이너를 시작하기 전에 각 컨테이너의 상태를 확인합니다. 상태 점검이 없으면 종속된 컨테이너가 아직 실행 중이 아니거나 시작에 실패하더라도 Cloud Run에서 모든 컨테이너를 시작하려고 시도합니다.

단일 인스턴스 내 컨테이너 여러 개에서 생성된 마운트 지점을 사용하여 각 컨테이너에 액세스할 수 있는 공유된 인메모리 볼륨에 액세스할 수 있습니다.

다음 단계

새 작업자 풀을 배포한 후에는 다음을 수행할 수 있습니다.