작업자 풀 환경 변수 구성

이 페이지에서는 Cloud Run 작업자 풀의 환경 변수를 구성하는 방법을 설명합니다.

구성을 변경하면 새 버전이 생성됩니다. 이를 변경하는 명시적 업데이트가 없으면 이후 버전에도 이 구성 설정이 자동으로 적용됩니다.

필요한 역할

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

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

환경 변수 설정하기

Google Cloud 콘솔, Google Cloud CLI, YAML 또는 Terraform을 사용하여 Cloud Run 작업자 풀의 환경 변수를 설정할 수 있습니다.

콘솔

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

    Cloud Run으로 이동

  2. 메뉴에서 작업자 풀을 선택하고 컨테이너 배포를 클릭하여 새 작업자 풀을 구성합니다. 기존 작업자 풀을 구성하는 경우 작업자 풀을 클릭한 후 새 버전 수정 및 배포를 클릭합니다.

  3. 새 작업자 풀을 구성하는 경우 초기 작업자 풀 페이지를 작성한 후 컨테이너, 볼륨, 네트워킹, 보안을 클릭하여 작업자 풀 구성 페이지를 펼칩니다.

  4. 컨테이너 탭을 클릭합니다.

    이미지

    • '변수 및 보안 비밀' 탭에서 변수 추가를 클릭하여 새 환경 변수를 추가한 다음 이름 필드에 변수의 이름을 지정합니다. 여러 환경 변수를 설정하거나 특수 문자를 이스케이프하는 방법에 관한 자세한 내용은 여러 환경 변수 설정을 참고하세요.
  5. 만들기 또는 배포를 클릭합니다.

gcloud

작업자 풀을 배포하는 동안 환경 변수를 지정하려면 --set-env-vars 플래그를 사용합니다.

gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL --set-env-vars KEY1=VALUE1,KEY2=VALUE2

다음을 바꿉니다.

  • WORKER_POOL을 작업자 풀 이름으로 바꿉니다.
  • KEY1=VALUE1,KEY2=VALUE2를 쉼표로 구분된 변수 이름 및 값 목록으로 바꿉니다.
  • IMAGE_URL을 작업자 풀이 포함된 컨테이너 이미지에 대한 참조로 바꿉니다(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest).

여러 환경 변수를 설정하거나 특수 문자를 이스케이프하는 방법에 관한 자세한 내용은 여러 환경 변수 설정을 참고하세요.

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:
            image: IMAGE_URL
            env:
            - name: NAME
              value: VALUE
            - name: NAME2
              value: VALUE2

    다음을 바꿉니다.

    • WORKER_POOL: Cloud Run 작업자 풀의 이름
    • IMAGE_URL을 작업자 풀이 포함된 컨테이너 이미지에 대한 참조로 바꿉니다(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest).
    • NAMEVALUE: 환경 변수의 이름과 값입니다.
  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 {
      image = "IMAGE_URL"
      env {
        name  = "KEY1"
        value = "VALUE1"
      }
      env {
        name  = "KEY2"
        value = "VALUE2"
      }
    }
  }
}

다음을 바꿉니다.

  • WORKER_POOL: 작업자 풀의 이름입니다.
  • REGION: Google Cloud 리전(예: europe-west1)
  • IMAGE_URL을 작업자 풀이 포함된 컨테이너 이미지에 대한 참조로 바꿉니다(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest).
  • KEY1VALUE1: 환경 변수 및 값 필요에 따라 변수와 값을 더 추가해도 됩니다.

컨테이너에 기본 환경 변수 설정

Dockerfile에서 ENV 문을 사용하여 환경 변수의 기본값을 설정할 수 있습니다.

ENV KEY1=VALUE1,KEY2=VALUE2

우선 순위: 컨테이너와 작업자 풀 변수 비교

컨테이너에서 기본 환경 변수를 설정하고 Cloud Run 작업자 풀에서도 이름이 같은 환경 변수를 설정하면 작업자 풀에 설정된 값이 우선 적용됩니다.

여러 환경 변수 설정

.env 파일 또는 --set-env-vars 플래그를 사용하여 여러 환경 변수를 설정할 수 있습니다.

.env 파일을 사용하여 여러 환경 변수 설정

콘솔

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

    Cloud Run으로 이동

  2. 메뉴에서 작업자 풀을 선택하고 컨테이너 배포를 클릭하여 새 작업자 풀을 구성합니다. 기존 작업자 풀을 구성하는 경우 작업자 풀을 클릭한 후 새 버전 수정 및 배포를 클릭합니다.

  3. 새 작업자 풀을 구성하는 경우 초기 작업자 풀 페이지를 작성한 후 컨테이너, 볼륨, 네트워킹, 보안을 클릭하여 작업자 풀 구성 페이지를 펼칩니다.

  4. 컨테이너 탭을 클릭합니다.

    이미지

    • '변수 및 보안 비밀' 탭에서 변수 추가를 클릭하고 .env 파일의 콘텐츠를 이름 필드에 붙여넣습니다. Cloud Run은 필드를 자동으로 채우고 .env 파일에 정의된 각 키-값 쌍에 대해 새 변수를 만듭니다.
  5. 만들기 또는 배포를 클릭합니다.

gcloud

.env 파일에서 여러 환경 변수를 지정하려면 다음 명령어를 실행합니다.

gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL --env-vars-file=ENV_FILE_PATH

다음을 바꿉니다.

  • WORKER_POOL: 작업자 풀의 이름입니다.
  • IMAGE_URL을 작업자 풀이 포함된 컨테이너 이미지에 대한 참조로 바꿉니다(예: us-docker.pkg.dev/cloudrun/container/worker-pool:latest).
  • ENV_FILE_PATH: .env 파일의 경로입니다.

--set-env-vars 플래그를 사용하여 여러 환경 변수 설정

KEY1=VALUE1,KEY2=VALUE2 형식으로 나열할 수 없는 환경 변수가 많은 경우 --set-env-vars 플래그를 여러 번 반복할 수 있습니다.
   [...]
   --set-env-vars "KEY1=VALUE1" \
   --set-env-vars "KEY2=VALUE2" \
   --set-env-vars "KEY3=VALUE3"

쉼표 문자 이스케이프 처리

쉼표 문자(,)는 환경 변수를 분할하는 데 사용되므로 환경 변수에 쉼표 문자가 값으로 포함되어 있으면 다른 구분 기호 문자(예: @)를 지정하여 구분 기호를 이스케이프 처리해야 합니다.
--set-env-vars "^@^KEY1=value1,value2,value3@KEY2=..."

환경 변수 업데이트

기존 작업자 풀의 런타임 환경 변수를 업데이트할 수 있습니다. 이는 비파괴적인 방식으로, 런타임 환경 변수를 변경 또는 추가하지만 삭제하지는 않습니다.

Google Cloud 콘솔, Google Cloud CLI, YAML 또는 Terraform에서 환경 변수를 업데이트할 수 있습니다.

콘솔

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

    Cloud Run으로 이동

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

  3. 컨테이너, 볼륨, 네트워킹, 보안을 클릭하여 작업자 풀 구성 페이지를 펼칩니다.

  4. 변수 및 보안 비밀 탭을 클릭합니다.

    이미지

  5. 업데이트할 환경 변수를 찾은 다음 이름 필드에 변수의 다른 이름이나 다른 값을 지정합니다.

  6. 배포를 클릭합니다.

gcloud

기존 작업자 풀의 환경 변수를 업데이트하려면 --update-env-vars 플래그를 사용합니다.

gcloud beta run worker-pools update WORKER_POOL --update-env-vars KEY1=VALUE1,KEY2=VALUE2

다음을 바꿉니다.

  • WORKER_POOL을 작업자 풀 이름으로 바꿉니다.
  • KEY1=VALUE1,KEY2=VALUE2를 쉼표로 구분된 변수 이름 및 값 목록으로 바꿉니다.

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

기존 작업자 풀의 환경 변수를 업데이트하려면 작업자 풀에 해당하는 main.tf 파일을 열고 이름 및 값 변수를 수정합니다. 그런 다음 명령어를 실행하여 Terraform 구성을 적용합니다.

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

환경 변수 삭제

콘솔

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

    Cloud Run으로 이동

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

  3. 컨테이너, 볼륨, 네트워킹, 보안을 클릭하여 작업자 풀 구성 페이지를 펼칩니다.

  4. 변수 및 보안 비밀 탭을 클릭합니다.

    이미지

  5. 삭제할 환경 변수를 찾아 필드 오른쪽에 있는 휴지통 아이콘을 클릭하여 환경 변수를 삭제합니다.

  6. 배포를 클릭합니다.

gcloud

기존 작업자 풀에서 환경 변수를 선택적으로 삭제하려면 --remove-env-vars 플래그를 사용합니다.

gcloud beta run worker-pools update WORKER_POOL --remove-env-vars KEY1,KEY2

다음을 바꿉니다.

  • WORKER_POOL을 작업자 풀 이름으로 바꿉니다.
  • KEY1,KEY2를 쉼표로 구분된 변수 이름 목록으로 바꿉니다.

또는 --clear-env-vars 플래그를 사용하여 이전에 설정된 모든 환경 변수를 삭제할 수 있습니다.

gcloud beta run worker-pools update WORKER_POOL --clear-env-vars

WORKER_POOL을 작업자 풀 이름으로 바꿉니다.

작업자 풀의 환경 변수 구성 보기

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

    Cloud Run으로 이동

  2. 작업자 풀을 클릭하여 배포된 작업자 풀 목록을 표시합니다.

  3. 검사할 작업자 풀을 클릭하여 세부정보 창을 표시합니다.

  4. 컨테이너 탭을 클릭하여 작업자 풀 컨테이너 구성을 표시합니다.

샘플 코드

코드에서 환경 변수에 액세스하는 방법을 보여주는 코드 샘플은 최종 사용자 인증 튜토리얼의 Secret Manager로 민감한 구성 처리를 참조하세요.

다음 단계

환경 변수를 사용하여 빌드팩 구성을 설정할 수 있습니다. 언어별 세부정보는 다음에 대한 빌드팩 문서를 참조하세요.