¿Cómo permito que las tareas de Amazon ECS extraigan imágenes de un repositorio de imágenes de Amazon ECR?

4 minutos de lectura
0

¿Cómo permito que las tareas de Amazon Elastic Container Service (Amazon ECS) extraigan imágenes de un repositorio de imágenes de Amazon Elastic Container Registry (Amazon ECR)?

Breve descripción

Para acceder al repositorio de imágenes de Amazon ECR con su tipo de lanzamiento, elija una de estas opciones:

  • Para los tipos de inicio de Amazon Elastic Compute Cloud (Amazon EC2), debe proporcionar permisos a ecsTaskExecutionRole o al perfil de instancia asociado a la instancia del contenedor. Sin embargo, siempre se recomienda conceder permisos de Amazon ECR a ecsTaskExecutionRole. Si se proporcionan permisos tanto a la instancia como al rol, ecsTaskExecutionRole tiene prioridad.
  • Para los tipos de lanzamiento de AWS Fargate, debe conceder permiso a su rol de ejecución de tareas de Amazon ECS para acceder al repositorio de imágenes de Amazon ECR.

Resolución

Para los tipos de lanzamiento de EC2

  1. Abra la consola de AWS Identity and Access Management (IAM).
  2. En el panel de navegación, elija Roles y, a continuación, Crear rol.
  3. Seleccione el tipo de rol de servicio de AWS.
  4. En la sección Casos de uso, seleccione EC2. A continuación, seleccione Siguiente.
  5. Elija la política gestionada AmazonEC2ContainerServiceforEC2Role predeterminada y, a continuación, seleccione Siguiente.
    Nota: La política AmazonEC2ContainerServiceforEC2Role también le permite registrar instancias de contenedor en su clúster de ECS y habilitar las secuencias de registro en Amazon CloudWatch.
  6. Agregue etiquetas a su política, si lo desea, y luego seleccione Siguiente.
  7. Para el Nombre de rol, introduzca un nombre único (como ECSRoleforEC2) y, a continuación, elija Crear rol.
  8. Lance una nueva instancia de contenedorusando la última AMI de Amazon Linux optimizada para Amazon ECS.
  9. Adjunte el rol que creó a la nueva instancia de contenedor.
  10. Cree una definición de tarea.
    Importante: En la sección containerDefinitions de su definición de la tarea, especifique la imagen ECR aws_account_id.dkr.ecr.region.amazonaws.com/repository:tag como propiedad de la imagen.
  11. Ejecute una tarea o un servicio mediante la definición de tarea que creó en el paso 10.
  12. (Opcional) Si no quiere otorgar permisos a un perfil de instancia, otorgue permisos al rol de ejecución de tareas de ECS. A continuación, ejecute una tarea o un servicio mediante la definición de tarea que creó en el paso 10.

Para los tipos de lanzamiento de Fargate

Un rol de ejecución de tareas de Amazon ECS se crea automáticamente en la experiencia de primera ejecución de la consola de Amazon ECS. Si no puede encontrar el rol o el rol se ha eliminado, siga estos pasos:

  1. Abra la consola de IAM.
  2. En el panel de navegación, elija Roles y, a continuación, Crear rol.
  3. En el apartado Seleccionar el tipo de entidad de confianza, seleccione Elastic Contenedor Service.
  4. Para Seleccionar su caso de uso, elija Elastic Contenedor Service Task y, a continuación, elija Siguiente.
  5. En la sección Adjuntar política de permisos, busque AmazonECSTaskExecutionRolePolicy, seleccione la política y, a continuación, elija Siguiente.
    Nota: Esta política también proporciona permisos para usar el controlador de registro awslogs.
  6. Para el Nombre de rol, ingrese ecsTaskExecutionRole y, a continuación, elija Crear rol.
  7. Cree una definición de tarea.
    Importante: En la sección containerDefinitions de su definición de la tarea, especifique la imagen ECR aws_account_id.dkr.ecr.region.amazonaws.com/repository:tag como propiedad de la imagen. Especifique el rol de IAM creado en el paso 6.
  8. Ejecute una tarea o un servicio usando la definición de tarea que creó en el paso 7.

Su tarea o servicio ahora puede extraer imágenes del repositorio de imágenes de Amazon ECR.


Información relacionada

Usando imágenes de Amazon ECR con Amazon ECS

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años