Amazon에서 풀스루 캐시 규칙 생성 ECR - Amazon ECR

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon에서 풀스루 캐시 규칙 생성 ECR

Amazon ECR 프라이빗 레지스트리에 캐시하려는 이미지가 포함된 각 업스트림 레지스트리에 대해 풀스루 캐시 규칙을 생성해야 합니다.

인증이 필요한 업스트림 레지스트리의 경우 보안 인증 정보를 Secrets Manager 보안 암호에 저장해야 합니다. 기존의 암호를 사용하거나 새 암호를 생성할 수 있습니다. Amazon ECR 콘솔 또는 Secrets Manager 콘솔에서 Secrets Manager 보안 암호를 생성할 수 있습니다. Amazon 콘솔 대신 Secrets Manager ECR 콘솔을 사용하여 Secrets Manager 보안 암호를 생성하려면 섹션을 참조하세요AWS Secrets Manager 보안 암호에 업스트림 리포지토리 보안 인증 정보 저장.

사전 조건

  • 풀스루 캐시 규칙을 생성할 수 있는 적절한 IAM 권한이 있는지 확인합니다. 자세한 내용은 IAM 업스트림 레지스트리를 Amazon ECR 프라이빗 레지스트리와 동기화하는 데 필요한 권한을 참조하세요.

  • 인증이 필요한 업스트림 레지스트리의 경우: 기존 보안 암호를 사용하려면 Secrets Manager 보안 암호가 다음 요구 사항을 충족하는지 확인합니다.

    • 보안 암호의 이름은 로 시작합니다ecr-pullthroughcache/. 에는 AWS Management Console ecr-pullthroughcache/ 접두사가 있는 Secrets Manager 보안 암호만 표시됩니다.

    • 보안 암호가 있는 계정 및 리전은 풀스루 캐시 규칙이 있는 계정 및 리전과 일치해야 합니다.

풀스루 캐시 규칙을 생성하는 방법(AWS Management Console)

다음 단계에서는 Amazon ECR 콘솔을 사용하여 풀스루 캐시 규칙과 Secrets Manager 암호를 생성하는 방법을 보여줍니다. Secrets Manager 콘솔을 사용하여 보안 암호를 생성하려면 섹션을 참조하세요AWS Secrets Manager 보안 암호에 업스트림 리포지토리 보안 인증 정보 저장.

  1. 에서 Amazon ECR 콘솔을 엽니다https://console.aws.amazon.com/ecr/.

  2. 탐색 모음에서 프라이빗 레지스트리 설정을 구성할 리전을 선택합니다.

  3. 탐색 창에서 프라이빗 레지스트리, 풀스루 캐시를 선택합니다.

  4. 풀스루 캐시 구성(Pull through cache configuration) 페이지에서 규칙 추가(Add rule)를 선택합니다.

  5. 1단계: 소스 지정 페이지의 레지스트리 에서 업스트림 레지스트리 목록에서 Amazon ECR Public, Kubernetes 또는 Quay를 선택한 다음 다음을 선택합니다.

  6. 2단계: 대상 지정 페이지에서 Amazon ECR리포지토리 접두사 에 소스 퍼블릭 레지스트리에서 가져온 이미지를 캐싱할 때 사용할 리포지토리 네임스페이스 접두사를 지정한 다음 다음 다음을 선택합니다. 네임스페이스는 기본적으로 작성되지만, 사용자 지정 네임스페이스를 지정할 수도 있습니다.

  7. 3단계: 검토 및 생성 페이지에서 풀스루 캐시 규칙 구성을 검토한 다음 생성을 선택합니다.

  8. 생성하려는 각 풀스루 캐시에 대해 이전 단계를 반복합니다. 풀스루 캐시 규칙은 각 리전에 대해 별도로 생성됩니다.

  1. 에서 Amazon ECR 콘솔을 엽니다https://console.aws.amazon.com/ecr/.

  2. 탐색 모음에서 프라이빗 레지스트리 설정을 구성할 리전을 선택합니다.

  3. 탐색 창에서 프라이빗 레지스트리, 풀스루 캐시를 선택합니다.

  4. 풀스루 캐시 구성(Pull through cache configuration) 페이지에서 규칙 추가(Add rule)를 선택합니다.

  5. 1단계: 소스 지정 페이지에서 레지스트리에 대해 Docker Hub, 다음을 선택합니다.

  6. 2단계: 인증 구성 페이지에서 업스트림 보안 인증 정보에 대해 Docker Hub의 인증 관련 보안 인증 정보를 AWS Secrets Manager 보안 암호로 저장해야 합니다. 기존 보안 암호를 지정하거나 Amazon ECR 콘솔을 사용하여 새 보안 암호를 생성할 수 있습니다.

    1. 기존 보안 암호를 사용하려면 기존 AWS 보안 암호 사용을 선택합니다. 보안 암호 이름의 경우 드롭다운을 사용하여 기존 보안 암호를 선택한 후 다음을 선택합니다.

      참고

      AWS Management Console 만 ecr-pullthroughcache/ 접두사를 사용하여 이름과 함께 Secrets Manager 보안 암호를 표시합니다. 또한 보안 암호는 풀스루 캐시 규칙이 생성된 동일한 계정 및 리전에 있어야 합니다.

    2. 새 보안 암호를 만들려면 AWS 보안 암호 생성을 선택하고 다음 작업을 수행한 후 다음을 선택합니다.

      1. 보안 암호 이름에서 보안 암호를 설명하는 이름을 지정합니다. 보안 암호 이름은 1~512자의 유니코드 문자를 포함해야 합니다.

      2. Docker Hub 이메일 에 Docker Hub 이메일을 지정합니다.

      3. Docker Hub 액세스 토큰에서 Docker Hub 액세스 토큰을 지정합니다. Docker Hub 액세스 토큰 생성에 대한 자세한 내용은 Docker 설명서의 Create and manage access tokens를 참조하세요.

  7. 3단계: 대상 지정 페이지에서 Amazon ECR리포지토리 접두사 에 소스 퍼블릭 레지스트리에서 가져온 이미지를 캐싱할 때 사용할 리포지토리 네임스페이스를 지정한 다음 다음을 선택합니다.

    네임스페이스는 기본적으로 작성되지만, 사용자 지정 네임스페이스를 지정할 수도 있습니다.

  8. 4단계: 검토 및 생성 페이지에서 풀스루 캐시 규칙 구성을 검토한 다음 생성을 선택합니다.

  9. 생성하려는 각 풀스루 캐시에 대해 이전 단계를 반복합니다. 풀스루 캐시 규칙은 각 리전에 대해 별도로 생성됩니다.

  1. 에서 Amazon ECR 콘솔을 엽니다https://console.aws.amazon.com/ecr/.

  2. 탐색 모음에서 프라이빗 레지스트리 설정을 구성할 리전을 선택합니다.

  3. 탐색 창에서 프라이빗 레지스트리, 풀스루 캐시를 선택합니다.

  4. 풀스루 캐시 구성(Pull through cache configuration) 페이지에서 규칙 추가(Add rule)를 선택합니다.

  5. 1단계: 소스 지정 페이지의 레지스트리 에서 GitHub 컨테이너 레지스트리 , 다음 를 선택합니다.

  6. 2단계: 인증 구성 페이지에서 업스트림 보안 인증 정보 의 경우 GitHub 컨테이너 레지스트리에 대한 인증 보안 인증을 보안 암호에 AWS Secrets Manager 저장해야 합니다. 기존 보안 암호를 지정하거나 Amazon ECR 콘솔을 사용하여 새 보안 암호를 생성할 수 있습니다.

    1. 기존 보안 암호를 사용하려면 기존 AWS 보안 암호 사용을 선택합니다. 보안 암호 이름의 경우 드롭다운을 사용하여 기존 보안 암호를 선택한 후 다음을 선택합니다.

      참고

      AWS Management Console 만 ecr-pullthroughcache/ 접두사를 사용하여 이름과 함께 Secrets Manager 보안 암호를 표시합니다. 또한 보안 암호는 풀스루 캐시 규칙이 생성된 동일한 계정 및 리전에 있어야 합니다.

    2. 새 보안 암호를 만들려면 AWS 보안 암호 생성을 선택하고 다음 작업을 수행한 후 다음을 선택합니다.

      1. 보안 암호 이름에서 보안 암호를 설명하는 이름을 지정합니다. 보안 암호 이름은 1~512자의 유니코드 문자를 포함해야 합니다.

      2. GitHub Container Registry 사용자 이름 에서 GitHub Container Registry 사용자 이름을 지정합니다.

      3. GitHub 컨테이너 레지스트리 액세스 토큰 에서 GitHub 컨테이너 레지스트리 액세스 토큰을 지정합니다. GitHub 액세스 토큰 생성에 대한 자세한 내용은 GitHub 설명서의 개인 액세스 토큰 관리를 참조하세요.

  7. 3단계: 대상 지정 페이지에서 Amazon ECR리포지토리 접두사 에 소스 퍼블릭 레지스트리에서 가져온 이미지를 캐싱할 때 사용할 리포지토리 네임스페이스를 지정한 다음 다음을 선택합니다.

    네임스페이스는 기본적으로 작성되지만, 사용자 지정 네임스페이스를 지정할 수도 있습니다.

  8. 4단계: 검토 및 생성 페이지에서 풀스루 캐시 규칙 구성을 검토한 다음 생성을 선택합니다.

  9. 생성하려는 각 풀스루 캐시에 대해 이전 단계를 반복합니다. 풀스루 캐시 규칙은 각 리전에 대해 별도로 생성됩니다.

  1. 에서 Amazon ECR 콘솔을 엽니다https://console.aws.amazon.com/ecr/.

  2. 탐색 모음에서 프라이빗 레지스트리 설정을 구성할 리전을 선택합니다.

  3. 탐색 창에서 프라이빗 레지스트리, 풀스루 캐시를 선택합니다.

  4. 풀스루 캐시 구성(Pull through cache configuration) 페이지에서 규칙 추가(Add rule)를 선택합니다.

  5. 1단계: 소스 지정 페이지에서 다음 작업을 수행합니다.

    1. 레지스트리에서 Microsoft Azure 컨테이너 레지스트리를 선택합니다.

    2. 소스 레지스트리 URL에서 Microsoft Azure 컨테이너 레지스트리의 이름을 지정한 다음 다음을 선택합니다.

      중요

      .azurecr.io 접미사는 자동으로 채워지므로 접두사만 지정하면 됩니다.

  6. 2단계: 인증 구성 페이지의 업스트림 보안 인증 정보에서 Microsoft Azure 컨테이너 레지스트리의 인증 관련 보안 인증 정보를 AWS Secrets Manager 보안 암호로 저장해야 합니다. 기존 보안 암호를 지정하거나 Amazon ECR 콘솔을 사용하여 새 보안 암호를 생성할 수 있습니다.

    1. 기존 보안 암호를 사용하려면 기존 보안 AWS 암호 사용을 선택합니다. 보안 암호 이름의 경우 드롭다운을 사용하여 기존 보안 암호를 선택한 후 다음을 선택합니다.

      참고

      AWS Management Console 만 ecr-pullthroughcache/ 접두사를 사용하여 이름과 함께 Secrets Manager 보안 암호를 표시합니다. 또한 보안 암호는 풀스루 캐시 규칙이 생성된 동일한 계정 및 리전에 있어야 합니다.

    2. 새 보안 암호를 만들려면 AWS 보안 암호 생성을 선택하고 다음 작업을 수행한 후 다음을 선택합니다.

      1. 보안 암호 이름에서 보안 암호를 설명하는 이름을 지정합니다. 보안 암호 이름은 1~512자의 유니코드 문자를 포함해야 합니다.

      2. Microsoft Azure 컨테이너 레지스트리 사용자 이름에서 Microsoft Azure 컨테이너 레지스트리 사용자 이름을 지정합니다.

      3. Microsoft Azure 컨테이너 레지스트리 액세스 토큰에서 Microsoft Azure 컨테이너 레지스트리 액세스 토큰을 지정합니다. Microsoft Azure 컨테이너 레지스트리 액세스 토큰을 만드는 방법에 대한 자세한 내용은 Microsoft Azure 설명서의 Create token - portal을 참조하세요.

  7. 3단계: 대상 지정 페이지에서 Amazon ECR리포지토리 접두사 에 소스 퍼블릭 레지스트리에서 가져온 이미지를 캐싱할 때 사용할 리포지토리 네임스페이스를 지정한 다음 다음을 선택합니다.

    네임스페이스는 기본적으로 작성되지만, 사용자 지정 네임스페이스를 지정할 수도 있습니다.

  8. 4단계: 검토 및 생성 페이지에서 풀스루 캐시 규칙 구성을 검토한 다음 생성을 선택합니다.

  9. 생성하려는 각 풀스루 캐시에 대해 이전 단계를 반복합니다. 풀스루 캐시 규칙은 각 리전에 대해 별도로 생성됩니다.

  1. 에서 Amazon ECR 콘솔을 엽니다https://console.aws.amazon.com/ecr/.

  2. 탐색 모음에서 프라이빗 레지스트리 설정을 구성할 리전을 선택합니다.

  3. 탐색 창에서 프라이빗 레지스트리, 풀스루 캐시를 선택합니다.

  4. 풀스루 캐시 구성(Pull through cache configuration) 페이지에서 규칙 추가(Add rule)를 선택합니다.

  5. 1단계: 소스 지정 페이지의 레지스트리에서 GitLab 컨테이너 레지스트리, 다음을 선택합니다.

  6. 2단계: 인증 구성 페이지에서 업스트림 보안 인증 정보 의 경우 GitLab 컨테이너 레지스트리에 대한 인증 보안 인증을 보안 암호에 AWS Secrets Manager 저장해야 합니다. 기존 보안 암호를 지정하거나 Amazon ECR 콘솔을 사용하여 새 보안 암호를 생성할 수 있습니다.

    1. 기존 보안 암호를 사용하려면 기존 보안 AWS 암호 사용을 선택합니다. 보안 암호 이름의 경우 드롭다운을 사용하여 기존 보안 암호를 선택한 후 다음을 선택합니다. Secrets Manager 콘솔을 사용하여 Secrets Manager 보안 암호를 생성하는 방법에 대한 자세한 내용은 AWS Secrets Manager 보안 암호에 업스트림 리포지토리 보안 인증 정보 저장을 참조하세요.

      참고

      AWS Management Console 만 ecr-pullthroughcache/ 접두사를 사용하여 이름과 함께 Secrets Manager 보안 암호를 표시합니다. 또한 보안 암호는 풀스루 캐시 규칙이 생성된 동일한 계정 및 리전에 있어야 합니다.

    2. 새 보안 암호를 만들려면 AWS 보안 암호 생성을 선택하고 다음 작업을 수행한 후 다음을 선택합니다.

      1. 보안 암호 이름에서 보안 암호를 설명하는 이름을 지정합니다. 보안 암호 이름은 1~512자의 유니코드 문자를 포함해야 합니다.

      2. GitLab Container Registry 사용자 이름 에서 GitLab Container Registry 사용자 이름을 지정합니다.

      3. GitLab 컨테이너 레지스트리 액세스 토큰 에서 GitLab 컨테이너 레지스트리 액세스 토큰을 지정합니다. GitLab 컨테이너 레지스트리 액세스 토큰 생성에 대한 자세한 내용은 GitLab 설명서의 개인 액세스 토큰, 그룹 액세스 토큰 또는 프로젝트 액세스 토큰을 참조하세요.

  7. 3단계: 대상 지정 페이지에서 Amazon ECR리포지토리 접두사 에 소스 퍼블릭 레지스트리에서 가져온 이미지를 캐싱할 때 사용할 리포지토리 네임스페이스를 지정한 다음 다음을 선택합니다.

    네임스페이스는 기본적으로 작성되지만, 사용자 지정 네임스페이스를 지정할 수도 있습니다.

  8. 4단계: 검토 및 생성 페이지에서 풀스루 캐시 규칙 구성을 검토한 다음 생성을 선택합니다.

  9. 생성하려는 각 풀스루 캐시에 대해 이전 단계를 반복합니다. 풀스루 캐시 규칙은 각 리전에 대해 별도로 생성됩니다.

풀스루 캐시 규칙을 생성하는 방법(AWS CLI)

create-pull-through-cache-rule AWS CLI 명령을 사용하여 Amazon ECR 프라이빗 레지스트리에 대한 풀스루 캐시 규칙을 생성합니다. 인증이 필요한 업스트림 레지스트리의 경우 보안 인증 정보를 Secrets Manager 보안 암호로 저장해야 합니다. Secrets Manager 콘솔을 사용하여 보안 암호를 생성하려면 섹션을 참조하세요AWS Secrets Manager 보안 암호에 업스트림 리포지토리 보안 인증 정보 저장.

지원되는 각 업스트림 레지스트리에 대해 다음 예제가 제공됩니다.

다음 예제에서는 Amazon ECR Public 레지스트리에 대한 풀스루 캐시 규칙을 생성합니다. 리포지토리 접두사를 ecr-public으로 지정합니다. 이렇게 하면 풀스루 캐시 규칙을 통해 생성한 각 리포지토리가 ecr-public/upstream-repository-name의 명명 체계를 사용하게 됩니다.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix ecr-public \ --upstream-registry-url public.ecr.aws \ --region us-east-2

다음 예제에서는 Kubernetes 퍼블릭 레지스트리에 대한 풀스루 캐시 규칙을 생성합니다. 리포지토리 접두사를 kubernetes으로 지정합니다. 이렇게 하면 풀스루 캐시 규칙을 통해 생성한 각 리포지토리가 kubernetes/upstream-repository-name의 명명 체계를 사용하게 됩니다.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix kubernetes \ --upstream-registry-url registry.k8s.io \ --region us-east-2

다음 예제에서는 Quay 퍼블릭 레지스트리에 대한 풀스루 캐시 규칙을 생성합니다. 리포지토리 접두사를 quay로 지정합니다. 이렇게 하면 풀스루 캐시 규칙을 통해 생성한 각 리포지토리가 quay/upstream-repository-name의 명명 체계를 사용하게 됩니다.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix quay \ --upstream-registry-url quay.io \ --region us-east-2

다음 예제에서는 Docker Hub 레지스트리에 대한 풀스루 캐시 규칙을 생성합니다. 리포지토리 접두사를 docker-hub으로 지정합니다. 이렇게 하면 풀스루 캐시 규칙을 통해 생성한 각 리포지토리가 docker-hub/upstream-repository-name의 명명 체계를 사용하게 됩니다. Docker Hub 보안 인증 정보가 포함된 보안 암호의 전체 Amazon 리소스 이름(ARN)을 지정해야 합니다.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix docker-hub \ --upstream-registry-url registry-1.docker.io \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

다음 예제에서는 GitHub Container Registry에 대한 풀스루 캐시 규칙을 생성합니다. 리포지토리 접두사를 docker-hub으로 지정합니다. 이렇게 하면 풀스루 캐시 규칙을 통해 생성한 각 리포지토리가 github/upstream-repository-name의 명명 체계를 사용하게 됩니다. GitHub 컨테이너 레지스트리 보안 인증 정보가 포함된 보안 암호의 전체 Amazon 리소스 이름(ARN)을 지정해야 합니다.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix github \ --upstream-registry-url ghcr.io \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

다음 예제에서는 Microsoft Azure Container Registry에 대한 풀스루 캐시 규칙을 생성합니다. 리포지토리 접두사를 azure으로 지정합니다. 이렇게 하면 풀스루 캐시 규칙을 통해 생성한 각 리포지토리가 azure/upstream-repository-name의 명명 체계를 사용하게 됩니다. Microsoft Azure Container Registry 보안 인증 정보가 포함된 보안 암호의 전체 Amazon 리소스 이름(ARN)을 지정해야 합니다.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix azure \ --upstream-registry-url myregistry.azurecr.io \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

다음 예제에서는 GitLab Container Registry에 대한 풀스루 캐시 규칙을 생성합니다. 리포지토리 접두사를 gitlab으로 지정합니다. 이렇게 하면 풀스루 캐시 규칙을 통해 생성한 각 리포지토리가 gitlab/upstream-repository-name의 명명 체계를 사용하게 됩니다. GitLab 컨테이너 레지스트리 보안 인증 정보가 포함된 보안 암호의 전체 Amazon 리소스 이름(ARN)을 지정해야 합니다.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix gitlab \ --upstream-registry-url registry.gitlab.com \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

다음 단계

풀스루 캐시 규칙을 생성한 후 다음 단계를 수행합니다.