Доступ контейнерной службы Amazon Lightsail к частным репозиториям Amazon ECR

Amazon Elastic Container Registry (Amazon ECR) — это управляемая AWS служба реестра образов контейнеров, которая поддерживает частные репозитории с разрешениями на основе ресурсов с помощью AWS Identity and Access Management (IAM). Вы можете предоставить контейнерным службам Amazon Lightsail доступ к частным репозиториям Amazon ECR в том же регионе AWS. Затем вы можете развернуть образы из частного хранилища в своих контейнерных службах.

Примечание. Мы рекомендуем использовать консоль Lightsail для управления доступом контейнерных служб к частным хранилищам Amazon ECR. При использовании консоли вам не нужно вручную добавлять имя ресурса Amazon Resource Name (ARN) принципала роли IAM к вашим частным репозиториям.

Необходимые разрешения
Пользователь, который будет управлять доступом контейнерных служб Lightsail к частным репозиториям Amazon ECR, должен иметь одну из следующих политик разрешений в 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/*"
 }
 ]
}
Вход в полноэкранный режим Выйти из полноэкранного режима

В политике замените AwsAccountId на идентификационный номер учетной записи AWS.

Предоставление доступа к определенному частному хранилищу 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.

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.

  1. Войдите в консоль Lightsail.
  2. На главной странице Lightsail выберите вкладку Контейнеры.
  3. Выберите имя контейнерной службы, для которой вы хотите настроить доступ к частному хранилищу Amazon ECR.
  4. Выберите вкладку Образы.
  5. Выберите один из следующих вариантов в разделе страницы Частные репозитории Amazon ECR:
  • Добавить хранилище, чтобы предоставить доступ вашей контейнерной службе к частному хранилищу Amazon ECR. Чтобы завершить добавление хранилища, перейдите к шагу 6 данной процедуры.

  • Удалить, чтобы удалить доступ для вашей службы контейнеров из ранее добавленного частного хранилища Amazon ECR. Доступ службы контейнеров к хранилищу будет немедленно удален.

  1. В появившемся выпадающем списке выберите частное хранилище, к которому вы хотите получить доступ.
  2. Выберите Добавить. Lightsail потратит несколько минут на активацию IAM-роли Amazon ECR image puller для вашей службы контейнеров, которая включает основное имя ресурса Amazon Resource Name (ARN). Затем Lightsail автоматически добавляет основную роль IAM ARN в политику разрешений выбранного вами частного репозитория Amazon ECR. Это предоставит вашей службе контейнеров доступ к частному хранилищу и его образам. Не закрывайте окно браузера, пока появившееся модальное окно не сообщит, что процесс завершен, и вы можете выбрать Continue.
  3. Выберите Продолжить, когда активация будет завершена. Выбранный частный репозиторий Amazon ECR отображается в разделе Частные репозитории Amazon ECR на странице. Чтобы использовать образ из своего хранилища, укажите формат URI, который отображается на странице, в развертывании службы контейнеров. В URI замените тег example на тег образа, который вы хотите развернуть.

Оцените статью
Procodings.ru
Добавить комментарий