기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon ECR 레지스트리에 요청
IPv4-only 엔드포인트 또는 듀얼 스택(IPv4 및 IPv6) 엔드포인트를 사용하여 Amazon ECR 프라이빗 레지스트리에서 OCI 이미지, Docker 이미지 및 OCI 호환 아티팩트를 푸시, 풀, 삭제, 확인 및 관리할 수 있습니다. IPv4 네트워크에서 요청하는 경우 듀얼 스택 또는 IPv4 엔드포인트를 사용할 수 있습니다. IPv6 네트워크에서 요청하는 경우 듀얼 스택 엔드포인트를 사용합니다. IPv4 및 듀얼 스택 엔드포인트를 사용하여 Amazon ECR 퍼블릭 레지스트리에 요청하는 방법에 대한 자세한 내용은 Amazon ECR 퍼블릭 레지스트리에 요청하기를 참조하세요. IPv6를 통해 Amazon ECR에 액세스하는 데 따르는 추가 요금은 없습니다. 요금에 대한 자세한 내용은 Amazon Elastic Container Registry 요금을
참고
Amazon ECR은 듀얼 스택 엔드포인트를 통한 AWS PrivateLink 트래픽을 지원하지 않습니다. AWS PrivateLink 지원이 필요한 경우 IPv4-only Amazon ECR 엔드포인트를 사용해야 합니다.
Amazon ECR 엔드포인트는 IPv4-only 엔드포인트 또는 듀얼 스택 엔드포인트 지원 이외의 속성으로 지정됩니다. 이러한 속성에는 다음이 포함될 수 있습니다.
-
리전 - 각 엔드포인트는 리전별로 다릅니다.
-
유형 - 엔드포인트 선택은 AWS SDK 또는 OCI 호환 및 Docker 명령줄 인터페이스를 사용하는지 여부에 따라 달라집니다.
-
보안 - 일부 리전에서 Amazon ECR은 FIPS 호환 엔드포인트를 제공합니다. FIPS 준수 Amazon ECR 엔드포인트 목록에 대한 자세한 내용은 FIPS(Federal Information Processing Standard) 140-3
을 참조하세요.
AWS CLI 및SDK에서 Amazon ECR API 호출을 처리하는 IPv4, 듀얼 스택, Docker 및 OCI 클라이언트에서 지원하는 서비스 엔드포인트에 대한 자세한 내용은 서비스 엔드포인트를 참조하세요. AWS SDKs
IPv6를 통한 요청 시작하기
IPv6를 통해 Amazon ECR 레지스트리에 요청하려면 듀얼 스택 엔드포인트를 사용해야 합니다. IPv6를 통해 Amazon ECR 레지스트리에 액세스하기 전에 다음 요구 사항을 확인합니다.
-
클라이언트와 네트워크는 IPv6를 지원해야 합니다.
-
Amazon ECR은 IPv6를 통해 다음 요청 유형을 지원합니다.
-
OCI 및 Docker 클라이언트 요청:
<registry-id>
.dkr-ecr.<aws-region>
.on.aws -
AWS API 요청:
ecr.
<aws-region>
.api.aws
-
-
IPv6 주소 범위를 포함하도록 소스 IP 주소 필터링을 사용하는 모든 AWS Identity and Access Management (IAM) 또는 레지스트리 정책을 업데이트해야 합니다. 자세한 내용은 IAM 정책에서 IPv6 주소 사용 단원을 참조하십시오.
-
IPv6를 사용하면 서버 액세스 로그에 IPv6 형식의
Remote IP
주소가 표시됩니다. 기존 도구, 스크립트 및 소프트웨어를 업데이트하여 이러한 IPv6-formatted의 IP 주소를 구문 분석합니다.참고
로그 파일에 IPv6 주소가 있는 것과 관련하여 문제가 있는 경우, AWS Support
에 문의하세요.
IP 주소 호환성 테스트
Linux/Unix 또는 Mac OS X를 사용하는 경우, 다음 예제에 나와 있는 curl
명령을 사용하여 IPv6을 통해 듀얼 스택 엔드포인트에 액세스할 수 있는지 테스트할 수 있습니다.
curl --verbose https://ecr.us-west-2.api.aws
다음 예제와 유사한 정보를 가져옵니다. IPv6을 통해 연결된 경우, 연결된 IP 주소가 IPv6 주소가 됩니다.
* About to connect() to ecr.us-west-2.api.aws port 443 (#0) * Trying IPv6 address... connected * Connected to ecr.us-west-2.api.aws (IPv6 address) port 443 (#0) > Host: ecr.us-west-2.api.aws * Request completely sent off
Microsoft Windows 7 또는 Windows 10을 사용하는 경우 다음 예제와 같이 ping
명령을 사용하여 IPv4 또는 IPv6를 통해 듀얼 스택 엔드포인트에 액세스할 수 있는지 테스트할 수 있습니다.
ping ecr.us-west-2.api.aws
듀얼 스택 엔드포인트를 사용하여 IPv6을 통해 요청
듀얼 스택 엔드포인트를 사용하여 IPv6를 통해 Amazon ECR API를 호출할 수 있습니다. Amazon ECR API 작업의 기능과 성능은 IPv4를 사용하든 IPv6를 사용하든 일관되게 유지됩니다.
AWS Command Line Interface (AWS CLI) 및 AWS SDKs를 사용하는 경우 파라미터 또는 플래그를 사용하여 듀얼 스택 엔드포인트로 전환하거나 구성 파일에 듀얼 스택 엔드포인트를 직접 지정하여 기본 Amazon ECR 엔드포인트를 재정의하여 IPv6를 활성화할 수 있습니다. 기본 프로필에서를 use_dualstack_endpoint
true로 설정하는 명령을 사용하여 구성을 변경할 수도 있습니다. 에 대한 자세한 내용은 듀얼 스택 및 FIPS 엔드포인트를 use_dualstack_endpoint
참조하세요. https://docs.aws.amazon.com/sdkref/latest/guide/feature-endpoints.html
예 명령을 사용하여 구성 변경
aws configure set default.ecr.use_dualstack_endpoint true
예 를 사용하여 IPv6를 통해 요청 AWS CLI
aws ecr describe-repositories --region us-west-2 --endpoint-url
https://ecr.us-west-2.api.aws
Docker CLI에서 Amazon ECR 엔드포인트 사용
Amazon ECR 리포지토리에 로그인하고 이미지에 태그를 지정한 후 Amazon ECR 레지스트리에서 OCI 이미지 및 Docker 이미지를 푸시하고 가져올 수 있습니다. 다음 예제에서는 듀얼 스택 엔드포인트가 모두 있는 Docker 푸시 및 Docker 풀 명령을 보여줍니다.
예 IPv4 엔드포인트를 사용하여 도커 이미지 푸시
docker push
<registry-id>
.dkr.ecr.us-west-1.amazonaws.com/my-repository:tag
예 듀얼 스택 엔드포인트를 사용하여 도커 이미지 푸시
docker push
<registry-id>
.dkr-ecr.us-west-1.on.aws/my-repository:tag
예 IPv4 엔드포인트를 사용하여 Docker 이미지 가져오기
docker pull
<registry-id>
.dkr.ecr.us-west-1.amazonaws.com/my-repository:tag
예 듀얼 스택 엔드포인트를 사용하여 Docker 이미지 가져오기
docker pull
<registry-id>
.dkr-ecr.us-west-1.on.aws/my-repository:tag
IAM 정책에서 IPv6 주소 사용
IPv6를 사용하여 레지스트리에 액세스하기 전에 IP 주소 필터링을 사용하는 IAM 사용자 및 Amazon ECR 레지스트리 정책에 IPv6 주소 범위가 포함되어 있는지 확인합니다. IP 주소 필터링 정책이 IPv6 주소를 처리하도록 업데이트되지 않은 경우 클라이언트는 IPv6 사용을 시작할 때 레지스트리에 대한 액세스 권한을 잘못 잃거나 획득할 수 있습니다. IAM으로 액세스 권한을 관리하는 방법에 대한 자세한 내용은 Amazon Elastic Container Registry용 Identity and Access Management 단원을 참조하세요.
IP 주소를 필터링하는 IAM 정책은 IP 주소 조건 연산자를 사용합니다. 다음 레지스트리 정책 예제에서는 IP 주소 조건 연산자를 사용하여 허용되는 IPv4 주소의 54.240.143.*
범위를 식별하는 방법을 보여줍니다. 이 범위를 벗어나는 모든 IP 주소는 레지스트리()에 대한 액세스가 거부됩니다exampleregistry
. 모든 IPv6 주소가 허용된 범위를 벗어났기 때문에이 정책은 IPv6 주소가에 액세스하는 것을 방지합니다exampleregistry
.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "IPAllow", "Effect": "Allow", "Principal": "*", "Action": "ecr:*", "Resource": "arn:aws:ecr:::
exampleregistry
/*", "Condition": { "IpAddress": {"aws:SourceIp": "54.240.143.0/24"} } } ] }
IPv4(54.240.143.0/24
) 및 IPv6(2001:DB8:1234:5678::/64
) 주소 범위를 모두 허용하려면 다음 예제와 같이 레지스트리 정책의 조건 요소를 수정합니다. 이 Condition
블록 형식을 사용하여 IAM 사용자 및 레지스트리 정책을 모두 업데이트할 수 있습니다.
"Condition": { "IpAddress": { "aws:SourceIp": [ "54.240.143.0/24", "2001:DB8:1234:5678::/64" ] } }
중요
IPv6를 사용하기 전에 IP 주소 필터링을 사용하는 모든 관련 IAM 사용자 및 레지스트리 정책을 업데이트해야 합니다. 레지스트리 정책에서는 IP 주소 필터링을 사용하지 않는 것이 좋습니다.
https://console.aws.amazon.com/iam/