컨테이너 레지스트리 콘텐츠를 공개적으로 사용할 수 있도록 하기

익명(인증되지 않은) 끌어오기 액세스를 위해 Azure 컨테이너 레지스트리를 설정하는 것은 인터넷 액세스 권한이 있는 모든 사용자가 레지스트리에서 콘텐츠를 끌어올 수 있는 기능을 허용하는 선택적 기능입니다.

익명 끌어오기 액세스는 표준 및 프리미엄 서비스 계층에서 사용 가능한 미리 보기 기능입니다. 익명 끌어오기 액세스를 구성하려면 Azure CLI(버전 2.21.0 이상)를 사용하여 레지스트리를 업데이트합니다. 설치하거나 업그레이드하려면 Azure CLI 설치를 참조하세요.

익명 끌어오기 액세스 정보

기본적으로 Azure 컨테이너 레지스트리에서 콘텐츠를 끌어오거나 푸시하는 액세스는 인증된 사용자만 사용할 수 있습니다. 익명(인증되지 않은) 끌어오기 액세스를 활성화하면 모든 레지스트리 콘텐츠를 읽기(끌어오기) 작업에 공개적으로 사용할 수 있습니다. 익명 끌어오기 액세스는 공용 컨테이너 이미지 배포와 같은 사용자 인증이 필요하지 않은 시나리오에서 사용할 수 있습니다.

  • 기존 레지스트리의 속성을 업데이트하여 익명 끌어오기 액세스를 활성화합니다.
  • 익명 끌어오기 액세스를 활성화한 후에는 언제든지 해당 액세스를 비활성화할 수 있습니다.
  • 인증되지 않은 클라이언트에서는 데이터 평면 작업만 사용할 수 있습니다.
  • 레지스트리는 높은 비율의 인증되지 않은 요청을 제한할 수 있습니다.
  • 이전에 레지스트리에 인증한 경우 익명 끌어오기 작업을 시도하기 전에 자격 증명을 지워야 합니다.

Warning

익명 풀 액세스는 현재 레지스트리의 모든 리포지토리에 적용됩니다. 리포지토리 범위 토큰을 사용하여 리포지토리 액세스를 관리하는 경우 모든 사용자가 익명 풀이 사용 가능한 레지스트리의 해당 리포지토리에서 풀할 수 있습니다. 익명 풀 액세스가 사용하도록 설정된 경우 토큰을 삭제하는 것이 좋습니다.

익명 끌어오기 액세스 구성

사용자는 Azure CLI를 사용하여 익명 끌어오기 액세스의 상태를 사용 및 사용하지 않도록 설정하거나 쿼리할 수 있습니다. 다음 예제에서는 익명 끌어오기 액세스의 상태를 사용 및 사용하지 않도록 설정하거나 쿼리하는 방법을 보여 줍니다.

익명 끌어오기 액세스 사용

az acr update 명령을 사용하여 레지스트리를 업데이트하고 --anonymous-pull-enabled 매개 변수를 전달합니다. 기본적으로 익명 끌어오기는 레지스트리에서 비활성화됩니다.

az acr update --name myregistry --anonymous-pull-enabled

Important

이전에 Docker 자격 증명을 사용하여 레지스트리에 인증한 경우 익명 끌어오기 작업을 시도하기 전에 기존 자격 증명을 지우도록 docker logout을 실행합니다. 그렇지 않으면 "끌어오기 액세스 거부됨"과 유사한 오류 메시지가 표시될 수 있습니다. docker login을 사용하고 레지스트리에 푸시하기 위해 이미지에 태그를 지정할 때는 항상 정규화된 레지스트리 이름(전체 소문자)를 지정해야 합니다. 제공된 예제에서 정규화된 이름은 myregistry.azurecr.io입니다.

이전에 Docker 자격 증명을 사용하여 레지스트리에 인증된 경우 다음 명령을 실행하여 기존 자격 증명을 지웁니다. 그렇지 않으면 이전 인증이 지워집니다.

   docker logout myregistry.azurecr.io

이렇게 하면 익명 끌어오기 작업을 시도하는 데 도움이 됩니다. 문제가 발생하는 경우 "끌어오기 액세스가 거부됨"과 유사한 오류 메시지가 표시될 수 있습니다.

익명 끌어오기 액세스 사용 안 함

--anonymous-pull-enabledfalse로 설정하여 익명 끌어오기 액세스를 비활성화합니다.

az acr update --name myregistry --anonymous-pull-enabled false

익명 끌어오기 액세스의 상태 쿼리

--query 매개 변수와 함께 az acr show 명령을 사용하여 "anonymous-pull" 상태를 쿼리할 수 있습니다. 예를 들면 다음과 같습니다.

az acr show -n <registry_name> --query anonymousPullEnabled

이 명령은 "익명 끌어오기"가 사용하도록 설정되어 있는지(true) 또는 사용하지 않도록 설정되어 있는지(false)를 나타내는 부울 값을 반환합니다. 이를 통해 사용자가 ACR 내에서 기능의 상태를 확인하는 프로세스가 간소화됩니다.

다음 단계