As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Referência da ação de implantação do Amazon Elastic Container Service
Você pode usar uma ação do Amazon ECS para implantar um serviço e um conjunto de tarefas do Amazon ECS. Um serviço do Amazon ECS é uma aplicação de contêiner implantada em um cluster do Amazon ECS. Um cluster do Amazon ECS é um conjunto de instâncias que hospedam sua aplicação de contêiner na nuvem. A implantação exige uma definição de tarefa que você cria no Amazon ECS e um arquivo de definições de imagem que CodePipeline usa para implantar a imagem.
Importante
A ação de implantação padrão do Amazon ECS para CodePipeline cria sua própria revisão da definição da tarefa com base na revisão usada pelo serviço Amazon ECS. Se você criar novas revisões para a definição de tarefa sem atualizar o serviço Amazon ECS, a ação de implantação ignorará essas revisões.
Antes de criar seu pipeline, você já deve ter criado os recursos do Amazon ECS, marcado e armazenado a imagem em seu repositório de imagens e carregado o BuildSpec arquivo em seu repositório de arquivos.
nota
Este tópico de referência descreve a ação de implantação padrão do Amazon ECS para CodePipeline. Para obter informações de referência sobre as ações de implantação CodeDeploy azul/verde do Amazon ECS em CodePipeline, consulte. Amazon Elastic Container Service e referência de ação de implantação CodeDeploy azul-verde
Tópicos
Tipo de ação
-
Categoria:
Deploy
-
Proprietário:
AWS
-
Fornecedor:
ECS
-
Versão:
1
Parâmetros de configuração
- ClusterName
-
Obrigatório: Sim
O cluster do Amazon ECS no Amazon ECS.
- ServiceName
-
Obrigatório: Sim
O serviço Amazon ECS que você criou no Amazon ECS.
- FileName
-
Obrigatório: Não
O nome do arquivo de definições de imagem, o arquivo JSON que descreve o nome de contêiner, a imagem e a tag do serviço. Você usa esse arquivo para implantações padrão do ECS. Para obter mais informações, consulte Input artifacts (Artefatos de entrada) e Arquivo imagedefinitions.json para ações de implantação padrão do Amazon ECS.
- DeploymentTimeout
-
Obrigatório: Não
O tempo limite da ação de implantação do Amazon ECS em minutos. O tempo limite é configurável até o tempo limite padrão máximo para essa ação. Por exemplo:
"DeploymentTimeout": "15"
Input artifacts (Artefatos de entrada)
-
Número de artefatos:
1
-
Descrição: a ação procura um arquivo
imagedefinitions.json
no repositório de arquivos de origem do pipeline. Um documento de definições de imagem é um arquivo JSON que descreve o nome do contêiner do Amazon ECS, a imagem e a tag. CodePipeline usa o arquivo para recuperar a imagem do seu repositório de imagens, como o Amazon ECR. Você também pode adicionar manualmente um arquivoimagedefinitions.json
para um pipeline em que a ação não seja automatizada. Para mais informações sobre o arquivoimagedefinitions.json
, consulte Arquivo imagedefinitions.json para ações de implantação padrão do Amazon ECS.A ação requer uma imagem existente que já tenha sido enviada por push para o repositório de imagens. Como o mapeamento da imagem é fornecido pelo arquivo
imagedefinitions.json
, a ação não exige que a fonte do Amazon ECR seja incluída como uma ação de origem no pipeline.
Artefatos de saída
-
Número de artefatos:
0
-
Descrição: os artefatos de saída não se aplicam a esse tipo de ação.
Permissões da função de serviço: ação padrão do Amazon ECS
Para o Amazon ECR, estas são as permissões mínimas necessárias para criar pipelines com uma ação de implantação do Amazon ECS.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "TaskDefinitionPermissions", "Effect": "Allow", "Action": [ "ecs:DescribeTaskDefinition", "ecs:RegisterTaskDefinition" ], "Resource": [ "*" ] }, { "Sid": "ECSServicePermissions", "Effect": "Allow", "Action": [ "ecs:DescribeServices", "ecs:UpdateService" ], "Resource": [ "arn:aws:ecs:*:{{customerAccountId}}:service/[[clusters]]/*" ] }, { "Sid": "ECSTagResource", "Effect": "Allow", "Action": [ "ecs:TagResource" ], "Resource": [ "arn:aws:ecs:*:{{customerAccountId}}:task-definition/[[taskDefinitions]]:*" ], "Condition": { "StringEquals": { "ecs:CreateAction": [ "RegisterTaskDefinition" ] } } }, { "Sid": "IamPassRolePermissions", "Effect": "Allow", "Action": "iam:PassRole", "Resource": [ "arn:aws:iam::{{customerAccountId}}:role/[[passRoles]]" ], "Condition": { "StringEquals": { "iam:PassedToService": [ "ecs.amazonaws.com", "ecs-tasks.amazonaws.com" ] } } } ] }
Você pode aceitar o uso da autorização para atribuição de tags no Amazon ECS. Ao aceitar, você deve conceder as seguintes permissões: ecs:TagResource
. Para obter mais informações sobre como aceitar e determinar se a permissão será necessária e a autorização de tag será aplicada, consulte o Cronograma de autorização para atribuição de tags no Guia do desenvolvedor do Amazon Elastic Container Service.
Você deve adicionar as iam:PassRole
permissões para usar as funções do IAM para tarefas. Para obter mais informações, consulte Perfil do IAM para execução de tarefas do Amazon ECS e Perfis do IAM para tarefas. Use o seguinte texto de política:
Declaração de ação
Consulte também
Os recursos relacionados a seguir podem ajudar você à medida que trabalha com esta ação.
-
Veja Tutorial: Crie e envie uma imagem do Docker para o Amazon ECR com CodePipeline (tipo V2) um tutorial que mostra como usar a ação ECRBuildand Publish para enviar uma imagem e, em seguida, usar a ação padrão do ECS para implantá-la no Amazon ECS.
-
Tutorial: Implantação contínua com CodePipeline — Este tutorial mostra como criar um Dockerfile que você armazena em um repositório de arquivos de origem, como. CodeCommit A seguir, o tutorial mostra como incorporar um CodeBuild BuildSpec arquivo que cria e envia sua imagem do Docker para o Amazon ECR e cria seu arquivo imagedefinitions.json. Por fim, você cria uma definição de serviço e tarefa do Amazon ECS e, em seguida, cria seu pipeline com uma ação de implantação do Amazon ECS.
nota
Este tópico e tutorial descrevem a ação de implantação padrão do Amazon ECS para CodePipeline. Para obter informações sobre as ações de implantação do Amazon ECS para CodeDeploy azul/verde em CodePipeline, consulte. Tutorial: Crie um pipeline com uma fonte e ECS-to-CodeDeploy implantação do Amazon ECR
-
Guia do desenvolvedor do Amazon Elastic Container Service: para obter informações sobre como trabalhar com imagens e contêineres do Docker, serviços e clusters do Amazon ECS e conjuntos de tarefas do ECS, consulte O que é o Amazon ECS?