App Engine 컨테이너 이미지를 Artifact Registry로 마이그레이션

리전 ID

REGION_ID는 앱을 만들 때 선택한 리전을 기준으로 Google에서 할당하는 축약된 코드입니다. 일부 리전 ID는 일반적으로 사용되는 국가 및 주/도 코드와 비슷하게 표시될 수 있지만 코드는 국가 또는 주/도와 일치하지 않습니다. 2020년 2월 이후에 생성된 앱의 경우 REGION_ID.r이 App Engine URL에 포함됩니다. 이 날짜 이전에 만든 기존 앱의 경우 URL에서 리전 ID는 선택사항입니다.

리전 ID에 대해 자세히 알아보세요.

Container Registry는 지원 중단되었으며 2025년 3월 18일에 종료되었습니다. 컨테이너 이미지를 저장하고 관리하려면 Artifact Registry를 사용하는 것이 좋습니다. 기본적으로 2025년 3월 5일 이후에 생성된 새 배포에서는 애플리케이션 이미지를 저장하는 데 Container Registry 대신 Artifact Registry를 사용합니다. Artifact Registry는 Container Registry와 같은 동일한 컨테이너 관리 기능을 제공하고 추가 기능 및 이점을 포함합니다. Artifact Registry는 컨테이너 이미지 및 비컨테이너 아티팩트를 모두 지원하는 완전 관리형 서비스로서 Container Registry의 기능을 확장합니다.

2024년 5월 이전에 생성되었거나 아직 자동 마이그레이션 도구를 실행하지 않은 프로젝트의 경우 이 가이드의 단계에 따라 App Engine이 배포 흐름을 자동으로 마이그레이션하도록 설정합니다.

App Engine 표준 환경

표준 환경의 대부분의 애플리케이션 구성요소는 자동화된 마이그레이션 프로세스를 따릅니다. 하지만 Artifact Registry로 원활하게 전환하려면 서비스 계정에 다음과 같은 필수 권한이 있는지 확인하세요.

  • 기존 표준 배포의 경우 배포하는 서비스 계정(App Engine 기본 서비스 계정(PROJECT_ID@appspot.gserviceaccount.com) 또는 커스텀 서비스 계정)에 명시적 Artifact Registry 쓰기 권한 artifactregistry.repositories.uploadArtifacts를 부여하는 역할이 있어야 합니다. 배포하는 서비스 계정과 연결된 역할을 찾으려면 서비스 계정에 대한 액세스 관리를 참고하세요.

  • 배포와 연결된 서비스 계정에 다음 역할 중 하나라도 있는 경우 새 배포에서 Artifact Registry를 사용할 수 있습니다.

    이러한 역할이 없다면 배포하는 서비스 계정에 Artifact Registry 작성자 역할(roles/artifactregistry.writer)을 부여합니다.

필요한 권한을 제공하지 않으면 표준 환경에 새 버전을 배포할 수 없습니다.

자동 마이그레이션 중에 Google Cloud 에서 새 저장소를 만들고 Container Registry에서 Artifact Registry로 이미지를 복사할 수 있습니다.

App Engine 가변형 환경

가변형 환경의 대부분의 애플리케이션 구성요소는 자동화된 마이그레이션 프로세스를 따릅니다. 하지만 Artifact Registry로 원활하게 전환하려면 서비스 계정에 다음과 같은 필수 권한이 있는지 확인하세요.

  • 기존의 가변형 배포가 Artifact Registry에서 정상적으로 작동하려면 배포하는 서비스 계정(App Engine 기본 서비스 계정(PROJECT_ID@appspot.gserviceaccount.com) 또는 커스텀 서비스 계정)에 읽기의 경우 artifactregistry.repositories.downloadArtifacts, 쓰기의 경우 artifactregistry.repositories.uploadArtifacts와 같은 명시적인 Artifact Registry 권한을 부여하는 역할이 있어야 합니다. 배포하는 서비스 계정과 연결된 역할을 찾으려면 서비스 계정에 대한 액세스 관리를 참고하세요.

  • 배포와 연결된 서비스 계정에 다음 역할 중 하나라도 있는 경우 새 배포에서 Artifact Registry를 사용할 수 있습니다.

    이러한 역할이 없다면 배포하는 서비스 계정에 Artifact Registry 저장소 관리자 역할(roles/artifactregistry.repoAdmin)을 부여합니다.

필수 권한을 제공하지 않으면 가변형 환경에 애플리케이션을 배포할 수 없습니다. 인스턴스 확장 및 다시 시작도 실패합니다.

자동 마이그레이션 중에 Google Cloud 에서 새 저장소를 만들고 Container Registry에서 Artifact Registry로 이미지를 복사할 수 있습니다.

수동으로 빌드된 컨테이너 이미지를 Artifact Registry로 마이그레이션

이전에 Container Registry사전 빌드된 컨테이너 이미지 또는 수동으로 빌드된 컨테이너 이미지를 사용하여 앱을 배포한 경우에는 자동화된 마이그레이션 프로세스가 적용되지 않습니다. 예를 들어 Docker로 컨테이너 이미지를 빌드하고, 이러한 이미지를 Container Registry에 푸시하고, gcloud app deploy --image-url 명령어를 사용하여 앱을 배포한 경우 자동화된 마이그레이션 프로세스가 작동하지 않습니다.

Container Registry의 사전 빌드된 컨테이너 이미지 또는 수동으로 빌드된 컨테이너 이미지를 사용하여 앱을 배포하는 경우 다음 옵션 중 하나를 선택하여 Artifact Registry로 마이그레이션합니다.