Azure Container Registry(미리 보기)에서 일시 삭제 정책을 사용하여 삭제된 아티팩트 복구

ACR(Azure Container Registry)을 통해 일시 삭제 정책을 사용하여 설정된 보존 기간 동안 실수로 삭제된 아티팩트를 복구할 수 있습니다.

Diagram of soft delete artifacts lifecycle.

일시 삭제 정책의 측면

일시 삭제 정책은 언제든지 사용 또는 사용하지 않도록 설정할 수 있습니다. ACR에서 일시 삭제 정책을 사용하도록 설정하면 삭제된 아티팩트를 보존 기간이 설정된 일시 삭제된 아티팩트로 관리합니다. 따라서 일시 삭제된 아티팩트를 나열, 필터링 및 복원될 수 있습니다.

보존 기간

일시 삭제된 아티팩트의 기본 보존 기간은 7일이지만 보존 기간 값을 1~90일 사이로 설정할 수 있습니다. 보존 정책 값을 설정, 업데이트 및 변경할 수 있습니다. 일시 삭제된 아티팩트는 보존 기간이 완료되면 만료됩니다.

자동 제거

자동 제거는 24시간마다 실행되며 일시 삭제된 아티팩트를 영구적으로 제거하기 전에 항상 현재 보존 일수 값을 고려합니다. 예를 들어 아티팩트가 일시 삭제된 지 5일 후에 보존 일 수 값을 7일에서 14일로 변경하면 아티팩트가 초기 일시 삭제로부터 14일 후에 만료됩니다.

Diagram of soft delete artifacts lifecycle.

가용성 및 가격 책정 정보

이 기능은 모든 서비스 계층(SKU라고도 함)에서 사용 가능합니다. 레지스트리 서비스 계층에 대한 자세한 내용은 Azure Container Registry 서비스 계층을 참조하세요.

참고 항목

일시 삭제된 아티팩트에 대한 요금은 스토리지의 활성 sku 가격 책정에 따라 청구됩니다.

미리 보기 제한 사항

Important

일시 삭제 정책은 현재 미리 보기 상태입니다. 베타, 미리 보기로 제공되거나 아직 일반 공급으로 릴리스되지 않은 Azure 기능에 적용되는 약관은 Microsoft Azure 미리 보기에 대한 추가 사용 약관을 참조하세요.

  • 현재 ACR에서 일시 삭제된 아티팩트를 수동으로 제거할 수 없습니다.
  • 일시 삭제 정책에서는 지역 복제 레지스트리를 지원하지 않습니다.
  • ACR에서 보존 정책과 일시 삭제 정책을 모두 사용할 수 없습니다. 태그 없는 매니페스트에 대한 보존 정책을 참조하세요.

필수 조건

  • 일시 삭제 작업을 수행하려면 사용자에게 다음 권한(레지스트리 수준)이 필요합니다.
Permission 설명
Microsoft.ContainerRegistry/registries/deleted/read 일시 삭제된 아티팩트 나열
Microsoft.ContainerRegistry/registries/deleted/restore/action 일시 삭제된 아티팩트 복원
  • Azure Cloud Shell 또는 Azure CLI의 로컬 설치를 사용하여 이 문서의 명령 예제를 실행할 수 있습니다. 로컬로 사용하려는 경우 2.0.74 이상 버전이 필요합니다. 해당 버전에 대해 az --version을 실행합니다. 설치 또는 업그레이드해야 하는 경우 Azure CLI 설치를 참조하세요.

  • Azure Portal에 로그인합니다.

레지스트리에 일시 삭제 정책 사용 - CLI

  1. 1~90일로 설정된 보존 기간이 있는 지정된 MyRegistry ACR의 일시 삭제 정책을 업데이트합니다.

    az acr config soft-delete update -r MyRegistry --days 7 --status <enabled/disabled>
    
  2. 지정된 MyRegistry ACR에 구성된 일시 삭제 정책을 표시합니다.

    az acr config soft-delete show -r MyRegistry 
    

일시 삭제된 아티팩트 나열 - CLI

az acr repository list-deleted 명령을 사용하면 일시 삭제된 리포지토리를 가져오고 나열할 수 있습니다. 자세한 내용을 확인하려면 --help를 사용하세요.

  1. 지정된 MyRegistry ACR에 일시 삭제된 리포지토리를 나열합니다.

    az acr repository list-deleted -n MyRegistry
    

az acr manifest list-deleted 명령을 사용하면 일시 삭제된 매니페스트를 가져오고 나열할 수 있습니다.

  1. 지정된 MyRegistry ACR에 hello-world 리포지토리의 일시 삭제된 매니페스트를 나열합니다.

    az acr manifest list-deleted -r MyRegistry -n hello-world
    

az acr manifest list-deleted-tags 명령을 사용하면 일시 삭제된 태그를 가져오고 나열할 수 있습니다.

  1. 지정된 MyRegistry ACR에 hello-world 리포지토리의 일시 삭제된 태그를 나열합니다.

    az acr manifest list-deleted-tags -r MyRegistry -n hello-world
    
  2. 지정된 MyRegistry ACR의 latest 태그와 일치하도록 hello-world 리포지토리의 일시 삭제 태그를 필터링합니다.

    az acr manifest list-deleted-tags -r MyRegistry -n hello-world:latest
    

일시 삭제된 아티팩트 복원 - CLI

az acr manifest restore 명령은 태그와 다이제스트로 단일 이미지를 복원합니다.

  1. 지정된 MyRegistry ACR에서 latest 태그와 sha256:abc123 다이제스트로 hello-world 리포지토리의 이미지를 복원합니다.

    az acr manifest restore -r MyRegistry -n hello-world:latest -d sha256:abc123
    
  2. 지정된 MyRegistry ACR에서 latest 태그로 hello-world 리포지토리의 가장 최근에 삭제된 매니페스트를 복원합니다.

    az acr manifest restore -r MyRegistry -n hello-world:latest
    

강제 복원은 리포지토리에 있는 동일한 이름의 기존 태그를 덮어씁니다. 강제 복원 중에 일시 삭제 정책을 사용하면 덮어쓴 태그가 일시 삭제됩니다. 특정 인수 --force, -f를 사용하여 강제 복원할 수 있습니다.

  1. 지정된 MyRegistry ACR에서 latest 태그와 sha256:abc123 다이제스트로 hello-world 리포지토리의 이미지를 강제 복원합니다.

    az acr manifest restore -r MyRegistry -n hello-world:latest -d sha256:abc123 -f
    

Important

매니페스트 목록을 복원해도 일시 삭제된 기본 매니페스트는 재귀적으로 복원되지 않습니다. 일시 삭제된 ORAS 아티팩트를 복원하는 경우 제목을 복원해도 참조자 체인은 재귀적으로 복원되지 않습니다. 또한 제목을 먼저 복원해야 합니다. 그러면 참조자 매니페스트만 복원할 수 있습니다. 그렇지 않으면 오류가 발생합니다.

레지스트리에 일시 삭제 정책 사용 - Portal

Azure Portal에서 일시 삭제 정책을 사용할 수도 있습니다.

  1. Azure Container Registry로 이동합니다.
  2. 개요 탭에서 일시 삭제(미리 보기) 상태를 확인합니다.
  3. 상태사용 안 함이면 업데이트를 선택합니다.

Screenshot to view the soft delete policy.

  1. 일시 삭제를 사용하려면 확인란을 선택합니다.
  2. 일시 삭제된 아티팩트를 보존할 기간을 0~90일 사이에서 선택합니다.
  3. 저장을 선택하여 변경 내용을 저장합니다.

Screenshot to enable soft delete policy.

일시 삭제된 아티팩트 복원 - Portal

  1. Azure Container Registry로 이동합니다.
  2. 메뉴 섹션에서 서비스를 선택하고 리포지토리를 선택합니다.
  3. 리포지토리에서 원하는 리포지토리를 선택합니다.
  4. 삭제된 아티팩트 관리를 선택하여 일시 삭제된 모든 아티팩트를 확인합니다.

참고 항목

일시 삭제 정책을 사용하고 매니페스트의 태그 해제나 아티팩트 삭제와 같은 작업을 수행하면 보존 기간(일)이 만료되기 전에 관리되는 삭제 아티팩트에서 이러한 태그와 아티팩트를 찾을 수 있습니다.

Screenshot of manage deleted artifacts.

  1. 복원해야 하는 삭제된 아티팩트를 필터링합니다.
  2. 아티팩트를 선택하고 오른쪽 열의 복원을 선택합니다.
  3. 아티팩트 복원 창이 팝업됩니다.

Screenshot to restore soft delete artifacts.

  1. 복원할 태그를 선택합니다. 여기서는 추가 태그를 선택하고 복구할 수 있는 옵션이 있습니다.
  2. 복원을 선택합니다.

Screenshot of restore window.

일시 삭제된 리포지토리에서 복원 - Portal

  1. Azure Container Registry로 이동합니다.
  2. 메뉴 섹션에서 서비스를 선택합니다.
  3. 서비스 탭에서 리포지토리를 선택합니다.
  4. 리포지토리 탭에서 삭제된 리포지토리 관리를 선택합니다.

Screenshot of manage delete repositories.

  1. 일시 삭제된 리포지토리(미리 보기)에서 삭제된 리포지토리를 필터링합니다.

Screenshot of soft delete repositories.

  1. 삭제된 리포지토리를 선택하고 삭제된 아티팩트 관리에서 삭제된 아티팩트를 필터링합니다.
  2. 아티팩트를 선택하고 오른쪽 열의 복원을 선택합니다.
  3. 아티팩트 복원 창이 팝업됩니다.

Screenshot to restore soft delete repositories.

  1. 복원할 태그를 선택합니다. 여기에는 다른 태그를 선택하고 복구할 수 있는 옵션이 있습니다.
  2. 복원을 선택합니다.

Screenshot of restore window for soft delete repositories.

Important

원본 리소스와 대상 리소스 모두에서 일시 삭제된 이미지 가져오기가 차단됩니다. 이미지를 일시 삭제된 리포지토리에 푸시하면 일시 삭제된 리포지토리가 복원됩니다. 일시 삭제된 이미지와 동일한 매니페스트 다이제스트를 공유하는 이미지를 푸시할 수 없습니다. 대신 일시 삭제된 이미지를 복원합니다.

다음 단계