

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á.

# Usar a ramificação da plataforma Docker gerenciada pelo ECS no Elastic Beanstalk
<a name="create_deploy_docker_ecs"></a>

Este tópico fornece uma visão geral dos ramos da plataforma Docker gerenciada pelo Elastic Beanstalk ECS para Amazon Linux 2 e Amazon Linux 2023. Ele também fornece informações de configuração específicas para a plataforma gerenciada Docker ECS. 

**Migração do Docker de vários contêineres em AL1**  
[Em 18 de julho de 2022,](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2022-07-18-linux-al1-retire.html) **o Elastic Beanstalk definiu o status de todas as ramificações da plataforma baseadas no Amazon Linux AMI AL1 () como descontinuadas.** Embora este capítulo forneça informações de configuração para esta plataforma retirada, recomendamos que você migre para a ramificação da plataforma compatível mais recente. Se você está usando atualmente o *Docker de vários contêineres aposentado em execução na* ramificação da AL1 plataforma, você pode migrar para a ramificação mais recente do *ECS* Running on platform. AL2023 A ramificação mais recente da plataforma é compatível com todos os recursos da ramificação da plataforma que foi retirada. Não é necessária nenhuma alteração no código-fonte. Para obter mais informações, consulte [Migrando seu aplicativo Elastic Beanstalk do Docker de vários contêineres gerenciado pelo ECS para o ECS no Amazon Linux 2023 AL1](migrate-to-ec2-AL2-platform.md).

## Visão geral da plataforma Docker gerenciada pelo ECS
<a name="create_deploy_docker_ecs_platform"></a>

O Elastic Beanstalk usa o Amazon Elastic Container Service (Amazon ECS) para coordenar implantações de contêiner em ambientes do Docker gerenciado pelo ECS. O Amazon ECS fornece ferramentas para gerenciar um cluster de instâncias executando contêineres do Docker. O Elastic Beanstalk cuida das tarefas do Amazon ECS, incluindo criação de cluster, definição de tarefas e execução. Cada uma das instâncias do ambiente executa o mesmo conjunto de contêineres que são definidos em um arquivo `Dockerrun.aws.json` v2. Para tirar o máximo proveito do Docker, o Elastic Beanstalk permite criar um ambiente no qual as instâncias do Amazon EC2 executam vários contêineres do Docker, lado a lado.

O diagrama a seguir mostra um ambiente demonstrativo do Elastic Beanstalk configurado com três contêineres do Docker em execução em cada instância do Amazon EC2 em um grupo de Auto Scaling:

![Elastic Beanstalk ambiente com balanceador de carga, grupo de escalonamento automático e tarefas em contêineres.](http://docs.aws.amazon.com/pt_br/elasticbeanstalk/latest/dg/images/aeb-multicontainer-docker-example.png)


## Recursos do Amazon ECS criados pelo Elastic Beanstalk
<a name="create_deploy_docker_ecs_resources"></a>

Quando você cria um ambiente usando a plataforma Docker gerenciada pelo ECS, o Elastic Beanstalk cria e configura automaticamente vários recursos do Amazon Elastic Container Service enquanto cria o ambiente. Fazendo isso, ele cria os contêineres necessários em cada instância do Amazon EC2. 
+ **Cluster do Amazon ECS**: as instâncias de contêiner no Amazon ECS são organizadas em clusters. Quando é ele usado com o Elastic Beanstalk, sempre é criado um cluster para cada ambiente do Docker gerenciado pelo ECS. Um cluster do ECS também contém provedores de capacidade de grupo do Auto Scaling e outros recursos.
+ **Definição de tarefas do Amazon ECS**: o Elastic Beanstalk usa o arquivo `Dockerrun.aws.json` v2 no projeto para gerar a definição de tarefas do Amazon ECS que é usada para configurar instâncias de contêiner no ambiente. 
+ **Tarefa do Amazon ECS**: o Elastic Beanstalk se comunica com o Amazon ECS para executar uma tarefa em todas as instâncias do ambiente para coordenar a implantação de contêineres. Em um ambiente escalável, o Elastic Beanstalk inicia uma nova tarefa sempre que uma instância é adicionada ao cluster. 
+ **Agente de contêiner do Amazon ECS**: o agente é executado em um contêiner do Docker nas instâncias do ambiente. O agente consulta o serviço do Amazon ECS e aguarda uma tarefa para executar. 
+ **Volumes de dados do Amazon ECS**: além dos volumes que você define em `Dockerrun.aws.json` v2, o Elastic Beanstalk insere definições de volume na definição da tarefa para facilitar a coleta de logs. 

  O Elastic Beanstalk cria volumes de log na instância de contêiner, um para cada contêiner, em `/var/log/containers/{{containername}}`. Esses volumes são denominados `awseb-logs-{{containername}}` e são fornecidos para os contêineres que devem ser montados. Consulte [Formato de definição de contêiner](create_deploy_docker_v2config.md#create_deploy_docker_v2config_dockerrun_format) para detalhes sobre como montá-los.

Para ter mais informações sobre os recursos do Amazon ECS, consulte o [Guia do desenvolvedor do Amazon Elastic Container Service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html).

## Arquivo `Dockerrun.aws.json` v2
<a name="create_deploy_docker_ecs_dockerrun"></a>

As instâncias do contêiner exigem um arquivo de configuração chamado `Dockerrun.aws.json`. *Instâncias de contêineres* referem-se às instâncias do Amazon EC2 que executam o Docker gerenciado pelo ECS em um ambiente Elastic Beanstalk. Esse arquivo é específico do Elastic Beanstalk e pode ser usado individualmente ou combinado com código-fonte e conteúdo em um [pacote de fonte](applications-sourcebundle.md) para criar um ambiente na plataforma Docker. 

**nota**  
O formado do `Dockerrun.aws.json` versão 2 adiciona suporte a vários contêineres por instância do Amazon EC2 e só pode ser usado com a plataforma Docker gerenciada pelo ECS. O formato difere significativamente das outras versões do arquivo de configuração compatíveis com as ramificações da plataforma Docker que não são gerenciadas pelo ECS.

 Consulte o [`Dockerrun.aws.json` v2](create_deploy_docker_v2config.md#create_deploy_docker_v2config_dockerrun) para obter detalhes sobre o formato atualizado e um arquivo de exemplo. 

## Imagens de Docker
<a name="create_deploy_docker_ecs_images"></a>

 A plataforma Docker gerenciada pelo ECS para o Elastic Beanstalk exige que as imagens sejam pré-criadas e armazenadas em um repositório de imagens online público ou privado antes de criar um ambiente do Elastic Beanstalk.

**nota**  
A criação de imagens personalizadas durante a implantação com um `Dockerfile` não é compatível com a plataforma Docker gerenciada pelo ECS no Elastic Beanstalk. Crie suas imagens e implante-as em um repositório online antes de criar um ambiente do Elastic Beanstalk.

Especifique as imagens por nome em `Dockerrun.aws.json` v2.

Para configurar o Elastic Beanstalk para autenticar em um repositório privado, inclua o parâmetro `authentication` no arquivo `Dockerrun.aws.json` v2. 

## Falha nas implantações de contêiner
<a name="create_deploy_docker_ecs_rollback"></a>

 Se uma tarefa do Amazon ECS falhar, um ou mais contêineres em seu ambiente Elastic Beanstalk não serão iniciados. O Elastic Beanstalk não reverte ambientes de vários contêineres devido a falha em uma tarefa do Amazon ECS. Se um contêiner não for iniciado no ambiente, implante novamente a versão atual ou uma versão funcional anterior do console do Elastic Beanstalk. 

**Para implantar uma versão existente**

1. Abra o console do Elastic Beanstalk na região do seu ambiente.

1. Clique em **Actions**, à direita do nome do aplicativo, e depois clique em **View application versions**.

1. Selecione uma versão do aplicativo e clique em **Deploy**.

## Estender plataformas Docker baseadas em ECS para o Elastic Beanstalk
<a name="create_deploy_docker_ecs_extending_linux"></a>

O Elastic Beanstalk oferece recursos de extensibilidade que permitem que você aplique seus próprios comandos, scripts e configurações às implantações de aplicação. O fluxo de trabalho de implantação para o *ECS AL2 e as* filiais da AL2023 plataforma varia um pouco das outras plataformas baseadas em Linux. Para obter mais informações, consulte [Fluxo de trabalho de implantação de instâncias para o ECS em execução no Amazon Linux 2 e versões posterioresFluxo de trabalho de implantação de instâncias para ECS em AL2 e versões posteriores](platforms-linux-extend.workflow.ecs-al2.md). 