Come posso consentire alle attività di Amazon ECS di estrarre immagini da un repository di immagini Amazon ECR?

3 minuti di lettura
0

Come posso consentire alle attività di Amazon Elastic Container Service (Amazon ECS) di estrarre immagini da un repository di immagini di Amazon Elastic Container Registry (Amazon ECR)?

Breve descrizione

Per accedere al repository di immagini Amazon ECR con il tuo tipo di avvio, scegli una delle opzioni seguenti:

  • Per i tipi di avvio Amazon Elastic Compute Cloud (Amazon EC2) devi fornire le autorizzazioni a ecsTaskExecutionRole o al profilo dell'istanza associato all'istanza di container. Tuttavia, è sempre consigliabile fornire le autorizzazioni per Amazon ECR a ecsTaskExecutionRole. Se vengono fornite le autorizzazioni sia all'istanza che al ruolo, ecsTaskExecutionRole avrà la precedenza.
  • Per i tipi di avvio AWS Fargate devi concedere al tuo ruolo di esecuzione delle attività Amazon ECS l'autorizzazione per accedere al repository di immagini Amazon ECR.

Risoluzione

Per i tipi di avvio EC2

  1. Apri la console AWS Identity e Access Management (IAM).
  2. Nel pannello di navigazione, scegli Ruoli, quindi scegli Crea ruolo.
  3. Scegli il tipo di ruolo di servizio AWS.
  4. Nella sezione Caso d'uso, seleziona EC2. Quindi, seleziona Avanti.
  5. Scegli la policy gestita predefinita AmazonEC2ContainerServiceforEC2Role, quindi scegli Avanti.
    Nota: la policy AmazonEC2ContainerServiceforEC2Role consente inoltre di registrare istanze di container nel cluster ECS e abilitare i flussi di log in Amazon CloudWatch.
  6. Se desideri, aggiungi tag alla tua policy, quindi scegli Avanti.
  7. In Nome ruolo, inserisci un nome univoco (ad esempio ECSRoleforEC2), quindi scegli Crea ruolo.
  8. Avvia una nuova istanza di container utilizzando la più recente AMI di Amazon Linux ottimizzata per Amazon ECS.
  9. Associa il ruolo che hai creato alla nuova istanza di container.
  10. Crea una definizione dell'attività.
    Importante: nella sezione containerDefinitions della definizione dell'attività, specifica l'immagine ECR aws_account_id.dkr.ecr.region.amazonaws.com/repository:tag come proprietà dell'immagine.
  11. Esegui un'attività o un servizio utilizzando la definizione dell'attività creata al passaggio 10.
  12. (Facoltativo) Se non desideri fornire autorizzazioni a un profilo dell'istanza, concedi le autorizzazioni al ruolo di esecuzione delle attività ECS. Quindi, esegui un'attività o un servizio utilizzando la definizione dell'attività creata al passaggio 10.

Per i tipi di avvio Fargate

Alla prima esecuzione della console Amazon ECS verrà creato automaticamente un ruolo di esecuzione delle attività Amazon ECS. Se non riesci a trovare il ruolo o se il ruolo è stato eliminato, completa questi passaggi:

  1. Apri la console IAM.
  2. Nel pannello di navigazione, scegli Ruoli, quindi scegli Crea ruolo.
  3. Nella sezione Seleziona il tipo di entità attendibile, scegli Elastic Container Service.
  4. In Seleziona il tuo caso d'uso, scegli Attività di Elastic Container Service, quindi scegli Avanti.
  5. Nella sezione Allega la policy di autorizzazione, cerca AmazonECSTaskExecutionRolePolicy, seleziona la policy, quindi scegli Avanti.
    Nota: questa policy fornisce anche le autorizzazioni per utilizzare il driver di log awslogs.
  6. In Nome ruolo, inserisci ecsTaskExecutionRole, quindi scegli Crea ruolo.
  7. Crea una definizione dell'attività.
    Importante: nella sezione containerDefinitions della definizione dell'attività, specifica l'immagine ECR aws_account_id.dkr.ecr.region.amazonaws.com/repository:tag come proprietà dell'immagine. Specifica il ruolo IAM creato al passaggio 6.
  8. Esegui un'attività o un servizio utilizzando la definizione dell'attività creata al passaggio 7.

A questo punto la tua attività o il tuo servizio sarà in grado di estrarre immagini dal repository di immagini Amazon ECR.


Informazioni correlate

Utilizzo delle immagini Amazon ECR con Amazon ECS

AWS UFFICIALE
AWS UFFICIALEAggiornata 2 anni fa