Estou tentando implantar um aplicativo web muito simples no AWS Fargate.
Enviei uma imagem docker do back-end do aplicativo para o ECR e estou tentando configurar uma definição de tarefa Fargate para o contêiner. Tenho todas as propriedades da tarefa definidas, a configuração é bastante simples, mas a tarefa não é criada e sempre recebo o erro:
Solicitação inválida fornecida: Criar TaskDefinition: Fargate exige que a definição de tarefa tenha o ARN da função de execução para oferecer suporte a imagens ECR. (Serviço: AmazonECS; Código de status: 400; Código de erro: ClientException; ID da solicitação:; Proxy: nulo)" (RequestToken:, HandlerErrorCode: InvalidRequest)
Sei que tenho uma imagem ECR e criei e selecionei a função IAM que o Fargate deseja (usandoesta documentação) mas ainda reclama.
Eu criei originalmente a tarefa com o tipo de inicialização EC2 e ela não teve problemas, mas decidi usar o tipo de inicialização Fargate por motivos de custo e simplicidade.
O que mais eu tenho que fazer?
Responder1
Acabei de encontrar esse problema e consegui resolvê-lo com a AWS. Aparentemente, há um bug ao adicionar as permissões associadas à função IAM ao usar a GUI para definições de tarefas.
Para resolver isso você pode ir para Formação de nuvem para especificar o arquivo de configuração lá. Você deverá ver suas definições de tarefas com falha lá. Clique na pilha associada à sua definição de tarefa e selecioneAtualizar/Editar modelo no designer.
Edite o JSON e adicione-o em"TaskRoleArn": "your task role"
{
[…]
"executionRoleArn" : "the-same-string-that-taskRoleArn-is-set-to"
[…]
}
Isso deve resolver seu problema
Responder2
Isso parece um bug na nova IU do ECS.
Volte para a IU antiga desmarcando a opção “Nova experiência ECS” na barra lateral esquerda e deve funcionar.
Responder3
O botão 'atualizar' está desativado para mim. Alguma idéia de como habilitá-lo ou outra solução alternativa? Consegui criar definições de serviço fargate há apenas alguns dias, então tenho modelos de formação de nuvem