Container Registry는 지원 중단되었으며 종료될 예정입니다. 2024년 5월 15일 이후에는 이전 Container Registry를 사용하지 않고 Artifact Registry가 Google Cloud 프로젝트의 gcr.io
도메인 이미지를 호스팅합니다. 2025년 3월 18일 이후에는 Container Registry가 종료됩니다.
지원 중단 및 종료 타임라인에 대한 자세한 내용은 Container Registry 지원 중단 및 Container Registry 종료 준비를 참조하세요.
Artifact Registry는 Google Cloud에서 컨테이너 이미지 스토리지 및 관리를 위해 권장되는 서비스입니다. Artifact Registry는 Container Registry와 같은 동일한 컨테이너 관리 기능을 제공하고 추가 기능 및 이점을 포함합니다. Artifact Registry는 컨테이너 이미지 및 비컨테이너 아티팩트를 모두 지원하는 완전 관리형 서비스로서 Container Registry의 기능을 확장합니다.
새 기능 요약
Artifact Registry는 Container Registry 기능을 다음과 같이 확장합니다.
- 저장소 수준 액세스 제어
- 리전에서 아티팩트를 호스팅하여 지연 시간과 데이터 전송 비용을 줄이고 데이터 상주 요구사항을 준수합니다.
- 이미지를 Google Kubernetes Engine 및 Dataproc Serverless에 스트리밍하여 워크로드 시작 시간을 줄입니다.
- 소스에서 Cloud Run에 배포
- 저장소 활동에 대한 감사 로깅
- 고객 관리 암호화 키(CMEK) 및 위치 제약조건을 사용하는 암호화가 포함된 조직 정책 적용
- 제약조건의 OS 취약점 외에도 Go 및 자바 취약점 검색
- 단일 호스트 뒤에서 여러 저장소를 집계하는 가상 저장소(미리보기)
- Docker Hub 또는 Maven Central와 같은 업스트림 소스에서 아티팩트를 캐시하는 원격 저장소(미리보기)
이러한 기능들에 대한 자세한 내용은 기능 비교를 참조하세요.
mirror.gcr.io
에서 캐시된 Docker Hub 이미지
Artifact Registry는 mirror.gcr.io
에서 자주 액세스되는 공개 Docker Hub 이미지를 캐시합니다. mirror.gcr.io
사용에 대한 자세한 내용은 캐시된 Docker Hub 이미지 가져오기를 참조하세요.
전환 옵션 선택
Artifact Registry로 전환하기 위해 사용할 수 있는 저장소는 두 가지 유형이 있습니다.
- Artifact Registry의 gcr.io 저장소
Container Registry
gcr.io
호스트 이름에 매핑된 저장소. Artifact Registry는 Container Registry 호스트에 대한gcr.io
요청을 동일한 Google Cloud 프로젝트에 있는 해당 Artifact Registry 저장소로 리디렉션합니다.다음과 같은 경우
gcr.io
저장소를 사용하세요.- 기존 이미지 자동화를 Artifact Registry로 전환하는 데 필요한 설정 및 구성의 양을 최소화해야 합니다.
- 다른 Google Cloud 프로젝트 또는 리전에서 Artifact Registry 저장소를 설정할 필요가 없습니다.
- Artifact Registry의 표준 저장소
모든 기능을 지원하고 기존 Container Registry 호스트와 완전히 독립적인 표준 모드 Artifact Registry 저장소입니다.
다음 경우에는 표준 저장소를 사용하세요.
- 규정 준수 요구사항에 따라 특정 리전에 데이터를 저장해야 합니다.
gcr.io
도메인을 지원하는 저장소는 Container Registry 호스트와 동일한 멀티 리전(asia
,eu
,us
)에서만 사용할 수 있습니다. - Container Registry를 사용 중인 프로젝트와 다른 프로젝트에 Artifact Registry 저장소를 설정해야 합니다.
이미지 저장 방법과 위치를 다시 설계해야 합니다. 예를 들면 다음과 같습니다.
- Cloud Run 및 Google Kubernetes Engine과 같은 런타임을 포함하여 다른 Google Cloud 리전별 리소스와 동일한 리전에 저장소를 만듭니다.
- 팀과 더 가까운 리전에 저장소를 설정합니다. 예를 들어
asia
멀티 리전 대신 오스트레일리아 리전에 또는us
멀티 리전 대신 남미 리전에 저장소를 만들 수 있습니다. - 다른 Identity and Access Management 정책과 동일한 프로젝트 및 위치에서 다중 Docker 저장소를 만듭니다. 예를 들어 서로 다른 개발자 액세스 수준을 사용하여
us-east1
리전에서 개발 저장소와 프로덕션 저장소를 설정할 수 있습니다.
여러 업스트림 표준 저장소에서 다운로드하기 위한 단일 엔드포인트로 작동하는 가상 저장소를 만들려 합니다.
외부 소스의 프록시 역할을 하는 원격 저장소를 사용하려고 합니다.
- 규정 준수 요구사항에 따라 특정 리전에 데이터를 저장해야 합니다.
표준, 원격, 가상, gcr.io
저장소가 공존할 수 있습니다. 예를 들어 Artifact Registry에서 gcr.io
저장소를 만들어 기존 Container Registry 설정을 전환하고 새 작업을 위한 표준 저장소를 만들 수 있습니다.
전환 도구 사용
다음 도구를 사용하여 Container Registry 사용량이 있는 프로젝트를 식별하고, Container Registry에서 Artifact Registry로 이미지를 복사하고, Container Registry에서 Artifact Registry로 여러 프로젝트를 자동으로 마이그레이션합니다.
- Container Registry 사용량을 확인합니다.
- 자동 마이그레이션 도구를 사용하여 Container Registry에서 Artifact Registry로 프로젝트를 마이그레이션하고, 이미지를 복사하고, 원하는 전환 저장소 유형을 선택합니다.
- 자동 마이그레이션 도구, gcrane, Docker, gcloud CLI를 사용하여 Container Registry에서 Artifact Registry로 이미지를 복사합니다.
기능 비교
다음 표에서는 Container Registry와 Artifact Registry 사이의 차이점을 요약해서 보여줍니다.
기능 | Container Registry | Artifact Registry |
---|---|---|
지원되는 형식 | 컨테이너 이미지만 | 컨테이너 이미지, 언어 패키지, OS 패키지를 포함하는 다중 아티팩트 형식 |
도메인 이름 | gcr.io |
pkg.dev
Artifact Registry는 gcr.io 저장소를 설정할 경우에도 |
저장소 모드 | 해당 없음 |
|
레지스트리 만들기 | 첫 번째 이미지를 내보내서 레지스트리 호스트를 만듭니다.
Container Registry는 Google Cloud 프로젝트의 Cloud Storage 버킷에 이미지를 저장하고, 레지스트리 특정 권한 부여와 같은 작업을 버킷에 직접 적용해야 합니다. |
저장소 만들기는 내보내기 및 가져오기의 개별 작업이며 저장소 사용으로부터 저장소 관리를 명확하게 구분합니다.
Artifact Registry에는 Google Cloud 프로젝트에서 관리할 Cloud Storage 버킷이 없습니다. 저장소에서 직접 이미지 관리 작업을 수행합니다. |
레지스트리 위치 | Google Cloud 프로젝트에는 4개의 멀티 리전 레지스트리 호스트만 제공됩니다. | 리전 또는 멀티 리전에서 개별적으로 제어되는 다중 저장소를 만듭니다. |
액세스 제어 |
|
|
인증 | 타사 클라이언트로 이미지를 내보내고 가져오는 여러 인증 방식을 제공합니다. | Artifact Registry는 Container Registry와 동일한 인증 방식을 지원합니다. 자세한 내용은 Docker 인증 설정을 참조하세요. |
고객 관리 암호화 키(CMEK) | CMEK를 사용하여 이미지가 포함된 스토리지 버킷을 암호화합니다. | CMEK를 사용하여 개별 저장소를 암호화합니다. |
Google Cloud 콘솔 사용 | Google Cloud 콘솔의 Container Registry 섹션에서 Container Registry 이미지를 보고 관리합니다. | Google Cloud 콘솔의 Artifact Registry 섹션에서 Artifact Registry와 Container Registry 저장소 목록을 봅니다. 이 페이지에서 Artifact Registry 저장소 및 이미지를 관리합니다.
Container Registry 저장소를 클릭하면 Google Cloud 콘솔의 Container Registry 섹션의 이미지 목록으로 이동합니다. |
gcloud CLI 및 API 명령어 사용 | gcloud container images 명령어를 사용합니다. 명령어가 단축된 다이제스트를 지원합니다. 전체 다이제스트 문자열을 지정하지 않으면 Container Registry가 부분 문자열을 기반으로 올바른 이미지를 찾으려고 시도합니다.
Container Registry에는 REST 또는 RPC API가 없습니다. |
gcloud artifacts docker 명령어를 사용합니다. 명령어가 단축된 다이제스트를 지원하지 않습니다.
Container Registry 및 Artifact Registry gcloud CLI 명령어를 비교하려면 gcloud CLI 명령어 비교를 참조하세요. Artifact Registry는 저장소 및 아티팩트 관리를 위한 REST 및 RPC API를 제공합니다. |
Pub/Sub 알림 | gcr 주제에 대한 변경사항을 게시합니다. |
gcr 주제에 대한 변경사항을 게시합니다. 기존 Container Registry 서비스와 동일한 프로젝트에서 저장소를 만들면 기존 Pub/Sub 구성이 자동으로 작동합니다.
자세한 내용은 Pub/Sub 알림 구성을 참조하세요. |
감사 로깅 | Container Registry는 레지스트리 활동에 대한 감사 로그를 제공하지 않습니다. | Cloud Logging을 사용하여 저장소 변경사항을 추적합니다. |
캐시된 Docker Hub 이미지 | mirror.gcr.io 는 모든 사용자 간에 가장 자주 요청되는 Docker Hub 이미지를 저장하는 플스루 캐시입니다.
mirror.gcr.io 는 이제 Artifact Registry에서 호스팅됩니다. |
mirror.gcr.io 는 이제 Artifact Registry에서 호스팅됩니다. VPC 서비스 제어 경계에서 mirror.gcr.io 를 사용하지 않는 경우 별도의 작업이 필요하지 않습니다. VPC 서비스 제어 경계에서 mirror.gcr.io 를 사용하는 방법에 대한 자세한 내용은 VPC 서비스 제어와 함께 Artifact Registry 사용을 참조하세요. |
VPC 서비스 제어 | 서비스 경계에 Container Registry를 추가할 수 있습니다. | 서비스 경계에 Artifact Registry를 추가할 수 있습니다. |
Artifact Analysis를 사용한 메타데이터 스토리지 및 분석 | 지원되는 OS가 포함된 이미지에서 주문형 스캔을 통해 OS 및 언어 패키지 취약점을 스캔합니다. 자동 스캔은 OS 취약점 정보만 반환합니다.
스캔 유형에 대해 자세히 알아보세요.
|
주문형 스캔과 자동 스캔을 모두 사용하여 OS 및 언어 패키지 취약점을 스캔합니다.
스캔 유형에 대해 자세히 알아보세요.
|
이미지 스트리밍 | 사용할 수 없음 | 큰 이미지를 가져올 때 더 빠른 자동 확장, 더 빠른 포드 시작, 지연 시간 감소를 위해 Artifact Registry의 이미지를 GKE 또는 Dataproc Serverless에 스트리밍합니다. |
Cloud Run 소스 배포 | 사용할 수 없음 | 소스 배포를 사용하면 단일 gcloud CLI 명령어를 사용해서 소스 코드로부터 컨테이너 이미지를 빌드하고, Artifact Registry에 이미지를 저장하고, Cloud Run에 배포할 수 있습니다. |
가격 책정 | Container Registry 가격은 스토리지 및 네트워크 데이터 전송을 포함한 Cloud Storage 사용량을 기준으로 책정됩니다. 레지스트리 호스트는 멀티 리전에서만 사용 가능하므로 데이터 전송 비용에는 Google Cloud에 이미지 배포가 포함됩니다. | Artifact Registry 가격은 스토리지와 네트워크 데이터 전송을 기반으로 자체적으로 책정됩니다. |
할당량 | Container Registry에는 고정된 요청 한도가 있습니다. Cloud Storage 할당량도 적용됩니다. 자세한 내용은 할당량 및 한도 문서를 참조하세요. | Artifact Registry에는 프로젝트당 및 사용자당 할당량이 있습니다. 사용자당 할당량은 기본적으로 제한이 없지만 단일 사용자가 프로젝트 수준의 할당량을 너무 많이 소비하지 않도록 사용자당 한도를 구성할 수 있습니다. |
gcloud 명령어 비교
다음 표에는 Container Registry 명령어와 이에 상응하는 gcloud CLI의 Artifact Registry 명령어가 요약되어 있습니다. 테이블의 링크를 클릭하여 명령어의 참조 페이지를 확인하세요.
Container Registry에 상응하는 기능이 없는 사용 가능한 모든 Artifact Registry 명령어는 표에 포함되지 않습니다. 전체 Artifact Registry 명령어 참조는 gcloud artifacts
문서를 참조하세요.
작업 | Container Registry | Artifact Registry |
---|---|---|
저장소 만들기 | 해당 없음 | gcloud artifacts repositories create
|
저장소 삭제 | 해당 없음 | gcloud artifacts repositories delete
|
이미지 나열 |
gcloud container images list
|
gcloud artifacts docker images list
|
태그 나열 |
gcloud container images list-tags
|
gcloud artifacts docker tags list
|
태그 추가 |
gcloud container images add-tag
|
gcloud artifacts docker tags add
|
태그 삭제 |
gcloud container images untag
|
gcloud artifacts docker tags delete
|
이미지 설명 |
gcloud container images describe
|
gcloud artifacts docker images list --include-tags
|