기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon ECR 프라이빗 리포지토리에 대한 Lightsail 컨테이너 서비스 액세스 권한 부여
Amazon Elastic Container Registry(Amazon ECR)는 AWS Identity and Access Management ()를 사용하는 리소스 기반 권한이 있는 프라이빗 리포지토리를 지원하는 AWS 관리형 컨테이너 이미지 레지스트리 서비스입니다IAM. Amazon Lightsail 컨테이너 서비스에 Amazon ECR 프라이빗 리포지토리에 대한 액세스 권한을 부여할 수 있습니다 AWS 리전. 그런 다음 프라이빗 리포지토리에서 컨테이너 서비스로 이미지를 배포할 수 있습니다.
Lightsail 콘솔 또는 AWS Command Line Interface ()를 사용하여 Lightsail 컨테이너 서비스 및 Amazon ECR 프라이빗 리포지토리에 대한 액세스를 관리할 수 있습니다AWS CLI. 그러나 Lightsail 콘솔은 프로세스를 단순화하기 때문에 사용하는 것이 좋습니다.
컨테이너 서비스에 대한 자세한 내용은 컨테이너 서비스를 참조하세요. Amazon에 대한 자세한 내용은 Amazon ECR 사용 설명서를 ECR참조하세요.
목차
필수 권한
Amazon ECR 프라이빗 리포지토리에 대한 Lightsail 컨테이너 서비스에 대한 액세스를 관리할 사용자는에서 다음 권한 정책 중 하나를 보유해야 합니다IAM. 자세한 내용은 AWS Identity and Access Management 사용 설명서의 IAM 자격 증명 권한 추가 및 제거를 참조하세요.
모든 Amazon ECR 프라이빗 리포지토리에 대한 액세스 권한 부여
다음 권한 정책은 사용자에게 Amazon ECR 프라이빗 리포지토리에 대한 액세스를 구성할 수 있는 권한을 부여합니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ManageEcrPrivateRepositoriesAccess", "Effect": "Allow", "Action": [ "ecr:SetRepositoryPolicy", "ecr:DescribeRepositories", "ecr:DeleteRepositoryPolicy", "ecr:GetRepositoryPolicy" ], "Resource": "arn:aws:ecr:*:
AwsAccountId
:repository/*" } ] }
정책에서를 AWS 계정 ID 번호로 바AwsAccountId
꿉니다.
특정 Amazon ECR 프라이빗 리포지토리에 대한 액세스 권한 부여
다음 권한 정책은 사용자에게 특정의 특정 Amazon ECR 프라이빗 리포지토리에 대한 액세스를 구성할 수 있는 권한을 부여합니다 AWS 리전.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ManageEcrPrivateRepositoriesAccess", "Effect": "Allow", "Action": [ "ecr:SetRepositoryPolicy", "ecr:DescribeRepositories", "ecr:DeleteRepositoryPolicy", "ecr:GetRepositoryPolicy" ], "Resource": "arn:aws:ecr:
AwsRegion
:AwsAccountId
:repository/RepositoryName
" } ] }
정책에서 아래 예제 텍스트를 사용자의 값으로 바꿉니다.
-
AwsRegion
- 프라이빗 리포지토리의 AWS 리전 코드(예:us-east-1
)입니다. Lightsail 컨테이너 서비스는 액세스하려는 프라이빗 리포지토리 AWS 리전 와 동일해야 합니다. -
AwsAccountId
- AWS 계정 ID 번호입니다. -
RepositoryName
- 액세스를 관리하려는 프라이빗 리포지토리의 이름입니다.
다음은 예제 값으로 채워진 권한 정책의 예제입니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ManageEcrPrivateRepositoriesAccess", "Effect": "Allow", "Action": [ "ecr:SetRepositoryPolicy", "ecr:DescribeRepositories", "ecr:DeleteRepositoryPolicy", "ecr:GetRepositoryPolicy" ], "Resource": "arn:aws:ecr:
us-east-1
:111122223333
:repository/my-private-repo
" } ] }
Lightsail 콘솔을 사용하여 프라이빗 리포지토리에 대한 액세스 관리
Lightsail 콘솔을 사용하여 Amazon ECR 프라이빗 리포지토리에 대한 Lightsail 컨테이너 서비스의 액세스를 관리하려면 다음 절차를 완료합니다.
-
Lightsail 콘솔
에 로그인합니다. -
왼쪽 탐색 창의 이미지에서 컨테이너를 선택합니다.
-
Amazon ECR 프라이빗 리포지토리에 대한 액세스를 구성할 컨테이너 서비스의 이름을 선택합니다.
-
이미지(Images) 탭을 선택합니다.
-
리포지토리 추가를 선택하여 컨테이너 서비스에 대한 액세스 권한을 Amazon ECR 프라이빗 리포지토리에 부여합니다.
참고
제거를 선택하여 이전에 추가된 Amazon ECR 프라이빗 리포지토리에서 컨테이너 서비스에 대한 액세스를 제거할 수 있습니다.
-
표시되는 드롭다운에서 액세스하려는 프라이빗 리포지토리를 선택한 다음 추가(Add)를 선택합니다.
Lightsail은 보안 주체 Amazon 리소스 이름()을 포함하는 컨테이너 서비스에 대한 Amazon ECR 이미지 풀러 IAM 역할을 활성화하는 데 몇 분 정도 걸립니다ARN. 그런 다음 Lightsail은 선택한 Amazon ECR 프라이빗 ARN 리포지토리의 권한 정책에 IAM 역할 보안 주체를 자동으로 추가합니다. 그러면 컨테이너 서비스에 프라이빗 리포지토리와 해당 이미지에 대한 액세스 권한이 부여됩니다. 프로세스가 완료되고 계속(Continue)을 선택할 수 있음을 나타내는 모달이 표시될 때까지 브라우저 창을 닫지 마세요.
-
활성화가 완료되면 계속(Continue)을 선택합니다.
선택한 Amazon ECR 프라이빗 리포지토리가 추가되면 페이지의 Amazon ECR 프라이빗 리포지토리 섹션에 나열됩니다. 이 페이지에는 프라이빗 리포지토리에서 Lightsail 컨테이너 서비스로 이미지를 배포하는 방법에 대한 지침이 포함되어 있습니다. 프라이빗 리포지토리의 이미지를 사용하려면 컨테이너 서비스 배포를 생성할 때 페이지에 표시되는 URI 형식을 이미지 값으로 지정합니다. URI 지정한에서 예제를 배포하려는 이미지의 태그
{image tag}
로 바꿉니다. 자세한 내용은 컨테이너 서비스 배포 생성 및 관리를 참조하세요.
AWS CLI 를 사용하여 프라이빗 리포지토리에 대한 액세스 관리
AWS Command Line Interface (AWS CLI)를 사용하여 Amazon ECR 프라이빗 리포지토리에 대한 Lightsail 컨테이너 서비스에 대한 액세스를 관리하려면 다음 단계가 필요합니다.
중요
Lightsail 콘솔을 사용하여 Amazon ECR 프라이빗 리포지토리에 대한 Lightsail 컨테이너 서비스의 액세스를 관리하는 것이 좋습니다. 프로세스를 간소화하기 때문입니다. 자세한 내용은이 가이드 앞부분의 Lightsail 콘솔을 사용하여 프라이빗 리포지토리에 대한 액세스 관리를 참조하세요.
-
Amazon ECR 이미지 풀러 IAM 역할 활성화 또는 비활성화 - Lightsail용 명령을 사용하여 AWS CLI
update-container-service
Amazon ECR 이미지 풀러 IAM 역할을 활성화 또는 비활성화합니다. 보안 주체 Amazon 리소스 이름(ARN)은 활성화할 때 Amazon ECR 이미지 풀러 IAM 역할에 대해 생성됩니다. 자세한 내용은이 가이드의 Amazon ECR 이미지 풀러 IAM 역할 활성화 또는 비활성화 섹션을 참조하세요. -
Amazon ECR 프라이빗 리포지토리에 정책 문이 있는지 확인 - Amazon ECR 이미지 풀러 IAM 역할을 활성화한 후 컨테이너 서비스로 액세스하려는 Amazon ECR 프라이빗 리포지토리에 기존 정책 문이 있는지 확인해야 합니다. 자세한 내용은이 안내서 뒷부분의 Amazon ECR 프라이빗 리포지토리에 정책 문이 있는지 확인을 참조하세요.
ARN 리포지토리에 기존 정책 문이 있는지 여부에 따라 다음 방법 중 하나를 사용하여 리포지토리에 IAM 역할 보안 주체를 추가합니다.
-
정책 문이 없는 프라이빗 리포지토리에 정책 추가 - Amazon용
set-repository-policy
명령을 사용하여 AWS CLI ARN 컨테이너 서비스의 Amazon ECR 이미지 풀러 역할 보안 주체를 기존 정책이 있는 프라이빗 리포지토리에 ECR 추가합니다. 자세한 내용을 알아보려면, 이 가이드 뒷부분의 정책 문이 없는 프라이빗 리포지토리에 정책 추가를 참조하세요. -
정책 문이 있는 프라이빗 리포지토리에 정책 추가 - Amazon용
set-repository-policy
명령을 사용하여 AWS CLI 컨테이너 서비스의 Amazon ECR 이미지 풀러 역할을 기존 정책이 없는 프라이빗 리포지토리에 ECR 추가합니다. 자세한 내용을 알아보려면 이 가이드 뒷부분의 정책 문이 있는 프라이빗 리포지토리에 정책 추가를 참조하세요.
-
Amazon ECR 이미지 풀러 IAM 역할 활성화 또는 비활성화
Lightsail 컨테이너 서비스에 대한 Amazon ECR 이미지 풀러 IAM 역할을 활성화 또는 비활성화하려면 다음 절차를 완료하세요. Lightsail에 대한 update-container-service
명령을 사용하여 Amazon ECR 이미지 풀러 IAM 역할을 활성화하거나 비활성화할 AWS CLI 수 있습니다. 자세한 정보는 AWS CLI 명령 참조의 update-container-service 섹션을 참조하세요.
참고
이 절차를 계속하려면 먼저 AWS CLI 를 설치하고 Lightsail용으로 구성해야 합니다. 자세한 내용은 Lightsail에서 작동하도록 구성을 AWS CLI참조하세요.
-
명령 프롬프트 또는 터미널 창을 엽니다.
-
다음 명령을 입력하여 컨테이너 서비스를 업데이트하고 Amazon ECR 이미지 풀러 IAM 역할을 활성화 또는 비활성화합니다.
aws lightsail update-container-service --service-name
ContainerServiceName
--private-registry-access ecrImagePullerRole={isActive=RoleActivationState
} --regionAwsRegionCode
명령에서 아래 예 텍스트를 사용자의 값으로 대체합니다.
-
ContainerServiceName
- Amazon ECR 이미지 풀러 IAM 역할을 활성화 또는 비활성화할 컨테이너 서비스의 이름입니다. -
RoleActivationState
- Amazon ECR 이미지 풀러 IAM 역할의 활성화 상태입니다.true
를 지정하여 역할을 활성화하거나false
를 지정하여 비활성화합니다. -
AwsRegionCode
- AWS 리전 컨테이너 서비스의 코드입니다(예:us-east-1
).
예시:
-
Amazon ECR 이미지 풀러 IAM 역할을 활성화하려면:
aws lightsail update-container-service --service-name
my-container-service
--private-registry-access ecrImagePullerRole={isActive=true
} --regionus-east-1
-
Amazon ECR 이미지 풀러 IAM 역할을 비활성화하려면:
aws lightsail update-container-service --service-name
my-container-service
--private-registry-access ecrImagePullerRole={isActive=false
} --regionus-east-1
-
-
경우에 따라 다음 작업을 수행합니다.
-
Amazon ECR 이미지 풀러 역할 활성화 - 이전 응답을 받은 후 30초 이상 기다립니다. 그런 다음 다음 단계로 이동하여 컨테이너 서비스에 대한 Amazon ECR 이미지 풀러 IAM 역할ARN의 보안 주체를 가져옵니다.
-
Amazon ECR 이미지 풀러 역할 비활성화 - 이전에 Amazon ECR 프라이빗 리포지토리의 권한 정책에 Amazon ECR 이미지 풀러 IAM 역할 보안 주체ARN를 추가한 경우 리포지토리에서 해당 권한 정책을 제거해야 합니다. 자세한 내용은 Amazon ECR 사용 설명서의 프라이빗 리포지토리 정책 설명 삭제를 참조하세요.
-
-
다음 명령을 입력하여 컨테이너 서비스에 대한 Amazon ECR 이미지 풀러 IAM 역할ARN의 보안 주체를 가져옵니다.
aws lightsail get-container-services --service-name
ContainerServiceName
--regionAwsRegionCode
명령에서 아래 예 텍스트를 사용자의 값으로 대체합니다.
-
ContainerServiceName
- Amazon ECR 이미지 풀러 IAM 역할 보안 주체를 가져올 컨테이너 서비스의 이름입니다ARN. -
AwsRegionCode
- AWS 리전 컨테이너 서비스의 코드입니다(예:us-east-1
).
예제:
aws lightsail get-container-services --service-name
my-container-service
--regionus-east-1
응답에서 ECR 이미지 풀러 IAM 역할 보안 주체ARN를 찾습니다. 역할이 나열되면 복사하거나 기록해 둡니다. 이 가이드의 다음 섹션에 필요합니다. 다음으로 컨테이너 서비스로 액세스하려는 Amazon ECR 프라이빗 리포지토리에 기존 정책 설명이 있는지 확인해야 합니다. 이 가이드의 Amazon ECR 프라이빗 리포지토리에 정책 설명이 있는지 확인 섹션으로 계속 진행합니다.
-
Amazon ECR 프라이빗 리포지토리에 정책 문이 있는지 확인
다음 절차에 따라 Amazon ECR 프라이빗 리포지토리에 정책 문이 있는지 확인합니다. Amazon에 AWS CLI get-repository-policy
대한 명령을 사용할 수 있습니다ECR. 자세한 정보는 AWS CLI 명령 참조의 update-container-service 섹션을 참조하세요.
참고
이 절차를 계속하려면 ECR 먼저 AWS CLI 를 설치하고 Amazon용으로 구성해야 합니다. 자세한 내용은 Amazon 사용 설명서의 Amazon에서 설정을 ECR 참조하세요. ECR
-
명령 프롬프트 또는 터미널 창을 엽니다.
-
다음 명령을 입력하여 특정 프라이빗 리포지토리에 대한 정책 문을 가져옵니다.
aws ecr get-repository-policy --repository-name
RepositoryName
--regionAwsRegionCode
명령에서 아래 예 텍스트를 사용자의 값으로 대체합니다.
-
RepositoryName
- Lightsail 컨테이너 서비스에 대한 액세스를 구성하려는 프라이빗 리포지토리의 이름입니다. -
AwsRegionCode
- 프라이빗 AWS 리전 리포지토리의 코드입니다(예:us-east-1
).
예제:
aws ecr get-repository-policy --repository-name
my-private-repo
--regionus-east-1
다음과 같은 응답 중 하나가 표시됩니다.
-
RepositoryPolicyNotFoundException - 프라이빗 리포지토리에 정책 문이 없습니다. 리포지토리에 정책 문이 없으면 이 가이드 뒷부분의 정책 문이 없는 프라이빗 리포지토리에 정책 추가 섹션의 단계를 따릅니다.
-
리포지토리 정책이 발견됨 - 프라이빗 리포지토리에 정책 문이 있으며 요청 응답에 표시됩니다. 리포지토리에 정책 문이 있으면 기존 정책을 복사한 다음 이 가이드 뒷부분의 정책 문이 없는 프라이빗 리포지토리에 정책 추가 섹션의 단계를 따릅니다.
-
정책 문이 없는 프라이빗 리포지토리에 정책 추가
정책 문이 없는 Amazon ECR 프라이빗 리포지토리에 정책을 추가하려면 다음 절차를 완료합니다. 추가하는 정책에는 Lightsail 컨테이너 서비스의 Amazon ECR 이미지 풀러 IAM 역할 보안 주체ARN가 포함되어야 합니다. 그러면 컨테이너 서비스가 프라이빗 리포지토리에서 이미지를 배포할 수 있는 액세스 권한이 부여됩니다.
중요
Lightsail 콘솔을 사용하여 액세스를 구성하면 Lightsail은 Amazon ECR 이미지 풀러 역할을 Amazon ECR 프라이빗 리포지토리에 자동으로 추가합니다. 이 경우이 섹션의 절차를 사용하여 프라이빗 리포지토리에 Amazon ECR 이미지 풀러 역할을 수동으로 추가할 필요가 없습니다. 자세한 내용은이 가이드 앞부분의 Lightsail 콘솔을 사용하여 프라이빗 리포지토리에 대한 액세스 관리를 참조하세요.
AWS CLI를 사용하여 프라이빗 리포지토리에 정책을 추가할 수 있습니다. 정책이 포함된 JSON 파일을 생성한 다음 Amazon에 대한 set-repository-policy
명령으로 해당 파일을 참조하면 됩니다ECR. 자세한 정보는 AWS CLI 명령 참조의 set-repository-policy 섹션을 참조하세요.
참고
이 절차를 계속하기 ECR 전에를 설치하고 Amazon용으로 AWS CLI 구성해야 합니다. 자세한 내용은 Amazon 사용 설명서의 Amazon에서 설정을 ECR 참조하세요. ECR
-
텍스트 편집기를 열고 다음 정책 문을 새 텍스트 파일에 붙여 넣습니다.
{ "Version": "2008-10-17", "Statement": [ { "Sid": "AllowLightsailPull-ecr-private-repo-demo", "Effect": "Allow", "Principal": { "AWS": "
IamRolePrincipalArn
" }, "Action": [ "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer" ] } ] }텍스트에서를이 가이드ARN의 앞부분에서 받은 컨테이너 서비스의 Amazon ECR 이미지 풀러 IAM 역할 보안 주체
IamRolePrincipalArn
로 바꿉니다. -
파일을 컴퓨터의 액세스 가능한 위치에
ecr-policy.json
으로 저장합니다(예: Windows의 경우C:\Temp\ecr-policy.json
, macOS 또는 Linux의 경우/tmp/ecr-policy.json
). -
생성된
ecr-policy.json
파일의 경로 위치를 기록해 둡니다. 이 절차의 뒷부분에 나오는 명령에서 이 위치를 지정합니다. -
명령 프롬프트 또는 터미널 창을 엽니다.
-
다음 명령을 입력하여 컨테이너 서비스로 액세스하려는 프라이빗 리포지토리에 대한 정책 문을 설정합니다.
aws ecr set-repository-policy --repository-name
RepositoryName
--policy-text file://path/to/
ecr-policy.json --regionAwsRegionCode
명령에서 아래 예 텍스트를 사용자의 값으로 대체합니다.
-
RepositoryName
- 정책을 추가할 프라이빗 리포지토리의 이름입니다. -
path/to/
-이 가이드의 앞부분에서 생성한 컴퓨터의ecr-policy.json
파일 경로입니다. -
AwsRegionCode
- 프라이빗 AWS 리전 리포지토리의 코드입니다(예:us-east-1
).
예시:
-
Windows의 경우:
aws ecr set-repository-policy --repository-name
my-private-repo
--policy-text file://C:\Temp\
ecr-policy.json --regionus-east-1
-
macOS 또는 Linux에서
aws ecr set-repository-policy --repository-name
my-private-repo
--policy-text file:///tmp/
ecr-policy.json --regionus-east-1
이제 컨테이너 서비스에서 프라이빗 리포지토리와 해당 이미지에 액세스할 수 있습니다. 리포지토리의 이미지를 사용하려면 다음을 컨테이너 서비스 배포URI의 이미지 값으로 지정합니다. 에서 예제를 배포하려는 이미지의 태그
tag
로 URI바꿉니다. 자세한 내용은 컨테이너 서비스 배포 생성 및 관리를 참조하세요.AwsAccountId
.dkr.ecr.AwsRegionCode
.amazonaws.com/RepositoryName
:ImageTag
에서 다음 예제 텍스트를 자체 텍스트로 URI바꿉니다.
-
AwsAccountId
- 계정 AWS ID 번호입니다. -
AwsRegionCode
- 프라이빗 AWS 리전 리포지토리의 코드입니다(예:us-east-1
). -
RepositoryName
- 컨테이너 이미지를 배포할 프라이빗 리포지토리의 이름입니다. -
ImageTag
- 컨테이너 서비스에 배포할 프라이빗 리포지토리의 컨테이너 이미지 태그입니다.
예제:
111122223333
.dkr.ecr.us-east-1
.amazonaws.com/my-private-repo
:myappimage
-
정책 문이 있는 프라이빗 리포지토리에 정책 추가
정책 문이 있는 Amazon ECR 프라이빗 리포지토리에 정책을 추가하려면 다음 절차를 완료합니다. 추가하는 정책에는 기존 정책과 Lightsail 컨테이너 서비스의 Amazon ECR 이미지 풀러 IAM 역할 보안 주체가 포함된 새 정책ARN이 포함되어야 합니다. 이렇게 하면 프라이빗 리포지토리에 대한 기존 권한이 유지되는 동시에 컨테이너 서비스가 프라이빗 리포지토리의 이미지를 배포할 수 있는 액세스 권한도 부여됩니다.
중요
Lightsail 콘솔을 사용하여 액세스를 구성할 때 Lightsail은 Amazon ECR 프라이빗 리포지토리에 Amazon ECR 이미지 풀러 역할을 자동으로 추가합니다. 이 경우이 섹션의 절차를 사용하여 프라이빗 리포지토리에 Amazon ECR 이미지 풀러 역할을 수동으로 추가할 필요가 없습니다. 자세한 내용은이 가이드 앞부분의 Lightsail 콘솔을 사용하여 프라이빗 리포지토리에 대한 액세스 관리를 참조하세요.
AWS CLI를 사용하여 프라이빗 리포지토리에 정책을 추가할 수 있습니다. 기존 정책과 새 정책이 포함된 JSON 파일을 생성하여이 작업을 수행합니다. 그런 다음 Amazon에 대한 set-repository-policy
명령을 사용하여 해당 파일을 참조합니다ECR. 자세한 정보는 AWS CLI 명령 참조의 set-repository-policy 섹션을 참조하세요.
참고
이 절차를 계속하려면 ECR 먼저 AWS CLI 를 설치하고 Amazon용으로 구성해야 합니다. 자세한 내용은 Amazon 사용 설명서의 Amazon으로 설정을 ECR 참조하세요. ECR
-
명령 프롬프트 또는 터미널 창을 엽니다.
-
다음 명령을 입력하여 특정 프라이빗 리포지토리에 대한 정책 문을 가져옵니다.
aws ecr get-repository-policy --repository-name
RepositoryName
--regionAwsRegionCode
명령에서 아래 예 텍스트를 사용자의 값으로 대체합니다.
-
RepositoryName
- Lightsail 컨테이너 서비스에 대한 액세스를 구성하려는 프라이빗 리포지토리의 이름입니다. -
AwsRegionCode
- 프라이빗 AWS 리전 리포지토리의 코드입니다(예:us-east-1
).
예제:
aws ecr get-repository-policy --repository-name
my-private-repo
--regionus-east-1
-
-
응답에서 기존 정책을 복사하고 다음 단계로 계속 진행합니다.
다음 예에서 강조 표시된 것처럼 큰따옴표로 묶인
policyText
의 내용만 복사해야 합니다. -
텍스트 편집기를 열고 이전 단계에서 복사한 프라이빗 리포지토리의 기존 정책을 붙여 넣습니다.
결과는 다음 예제와 같아야 합니다.
-
붙여 넣은 텍스트에서
\n
을 줄 바꿈으로 바꾸고 나머지\
를 삭제합니다.결과는 다음 예제와 같아야 합니다.
-
텍스트 파일 끝에 다음 정책 문을 붙여 넣습니다.
, { "Version": "2008-10-17", "Statement": [ { "Sid": "AllowLightsailPull-ecr-private-repo-demo", "Effect": "Allow", "Principal": { "AWS": "
IamRolePrincipalArn
" }, "Action": [ "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer" ] } ] } -
텍스트에서를이 가이드ARN의 앞부분에서 받은 컨테이너 서비스의 Amazon ECR 이미지 풀러 IAM 역할 보안 주체
IamRolePrincipalArn
로 바꿉니다.결과는 다음 예제와 같아야 합니다.
-
파일을 컴퓨터의 액세스 가능한 위치에
ecr-policy.json
으로 저장합니다(예: Windows의 경우C:\Temp\ecr-policy.json
, macOS 또는 Linux의 경우/tmp/ecr-policy.json
). -
ecr-policy.json
파일의 경로 위치를 기록해 둡니다. 이 절차의 뒷부분에 나오는 명령에서 이 위치를 지정합니다. -
명령 프롬프트 또는 터미널 창을 엽니다.
-
다음 명령을 입력하여 컨테이너 서비스로 액세스하려는 프라이빗 리포지토리에 대한 정책 문을 설정합니다.
aws ecr set-repository-policy --repository-name
RepositoryName
--policy-text file://path/to/
ecr-policy.json --regionAwsRegionCode
명령에서 아래 예 텍스트를 사용자의 값으로 대체합니다.
-
RepositoryName
- 정책을 추가할 프라이빗 리포지토리의 이름입니다. -
path/to/
-이 안내서의 앞부분에서 생성한 컴퓨터의ecr-policy.json
파일 경로입니다. -
AwsRegionCode
- 프라이빗 AWS 리전 리포지토리의 코드입니다(예:us-east-1
).
예시:
-
Windows의 경우:
aws ecr set-repository-policy --repository-name
my-private-repo
--policy-text file://C:\Temp\
ecr-policy.json --regionus-east-1
-
macOS 또는 Linux에서
aws ecr set-repository-policy --repository-name
my-private-repo
--policy-text file:///tmp/
ecr-policy.json --regionus-east-1
다음 예와 비슷한 응답이 나타나는 것을 볼 수 있습니다.
get-repository-policy
명령을 다시 실행하면 프라이빗 리포지토리에 새로운 추가 정책 문이 표시됩니다. 이제 컨테이너 서비스에서 프라이빗 리포지토리와 해당 이미지에 액세스할 수 있습니다. 리포지토리의 이미지를 사용하려면 다음을 컨테이너 서비스 배포URI의 이미지 값으로 지정합니다. 에서 예제를 배포하려는 이미지의 태그tag
로 URI바꿉니다. 자세한 내용은 컨테이너 서비스 배포 생성 및 관리를 참조하세요.AwsAccountId
.dkr.ecr.AwsRegionCode
.amazonaws.com/RepositoryName
:ImageTag
에서 다음 예제 텍스트를 자체 텍스트로 URI바꿉니다.
-
AwsAccountId
- 계정 AWS ID 번호입니다. -
AwsRegionCode
- 프라이빗 AWS 리전 리포지토리의 코드입니다(예:us-east-1
). -
RepositoryName
- 컨테이너 이미지를 배포할 프라이빗 리포지토리의 이름입니다. -
ImageTag
- 컨테이너 서비스에 배포할 프라이빗 리포지토리의 컨테이너 이미지 태그입니다.
예제:
111122223333
.dkr.ecr.us-east-1
.amazonaws.com/my-private-repo
:myappimage
-