

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

# Personalização avançada de ambiente com arquivos de configuração (`.ebextensions`)
<a name="ebextensions"></a>

Você pode adicionar arquivos de AWS Elastic Beanstalk configuração (`.ebextensions`) ao código-fonte do seu aplicativo web para configurar seu ambiente e personalizar os AWS recursos que ele contém. Arquivos de configuração são documentos formatados em YAML ou JSON com uma extensão de arquivo `.config` que você coloca em uma pasta `.ebextensions` e implanta no [pacote de origem](applications-sourcebundle.md) da sua aplicação.

**Example .ebextensions/ .config network-load-balancer**  
Este exemplo facilita uma alteração de configuração. Ele modifica uma opção de configuração para definir o tipo de balanceador de carga do ambiente como Network Load Balancer.  

```
option_settings:
  aws:elasticbeanstalk:environment:
    LoadBalancerType: network
```

Recomendamos usar o YAML para seus arquivos de configuração, pois é mais legível do que o JSON. YAML é compatível com comentários, comandos de várias linhas, várias alternativas para usar aspas e muito mais. No entanto, é possível fazer qualquer alteração de configuração em arquivos de configuração do Elastic Beanstalk de forma idêntica usando YAML ou JSON.

**Dica**  
Quando você estiver desenvolvendo ou testando novos arquivos de configuração, inicie um ambiente limpo executando o aplicativo padrão e implante nele. Arquivos de configuração formatados incorretamente causarão falha irrecuperável do início de um novo ambiente.

A seção `option_settings` de um arquivo de configuração define valores para as [opções de configuração](command-options.md). As opções de configuração permitem que você configure seu ambiente do Elastic Beanstalk AWS , os recursos nele contidos e o software que executa seu aplicativo. Os arquivos de configuração são apenas uma das várias maneiras de definir as opções de configuração.

A [`Resources`seção](environment-resources.md) permite que você personalize ainda mais os recursos no ambiente do seu aplicativo e defina AWS recursos adicionais além da funcionalidade fornecida pelas opções de configuração. Você pode adicionar e configurar qualquer recurso suportado pelo AWS CloudFormation, que o Elastic Beanstalk usa para criar ambientes.

As outras seções de um arquivo de configuração (`packages`,`sources`,`files`,`users`,`groups`, `commands``container_commands`, e`services`) permitem que você configure as EC2 instâncias que são executadas em seu ambiente. Sempre que um servidor é iniciado no ambiente, o Elastic Beanstalk executa as operações definidas nessas seções para preparar o sistema operacional e o sistema de armazenamento para a aplicação.

Para obter exemplos de .ebextensions usados com frequência, consulte os [Arquivos de configuração do repositório do Elastic Beanstalk](https://github.com/awsdocs/elastic-beanstalk-samples/tree/master/configuration-files).

**Requisitos**
+ **Local**: o Elastic Beanstalk processará todas as pastas `.ebextensions` presentes na sua implantação. No entanto, recomendamos que você coloque todos os seus arquivos de configuração em uma única pasta, denominada `.ebextensions`, na raiz do seu pacote de código-fonte. Pastas que começam com um ponto podem ser ocultas por navegadores de arquivos, portanto, certifique-se de que a pasta é adicionada quando você criar seu pacote de origem. Para obter mais informações, consulte [Crie um pacote de origem da aplicação Elastic Beanstalk](applications-sourcebundle.md).
+ **Nomenclatura**: os arquivos de configuração devem ter a extensão de arquivo `.config`.
+ **Formatação**: os arquivos de configuração devem ser compatíveis com as especificações de YAML ou JSON.

  Ao usar o YAML, sempre use espaços para recuar as chaves em diferentes níveis de aninhamento. Para obter mais informações sobre YAML, consulte [YAML Ain't Markup Language (YAML™) versão 1.1](http://yaml.org/spec/current.html).
+ **Exclusividade**: use cada chave somente uma vez em cada arquivo de configuração.
**Aviso**  
Se você usar uma chave (por exemplo, `option_settings`) duas vezes no mesmo arquivo de configuração, uma das seções será descartada. Combine seções duplicadas em uma única seção ou coloque-as em arquivos de configuração separados.

O processo de implantação varia ligeiramente, dependendo do cliente que você usa para gerenciar seus ambientes. Para detalhes, consulte estas seções:
+ [Console do Elastic Beanstalk](environment-configuration-methods-during.md#configuration-options-during-console-ebextensions)
+ [EB CLI](environment-configuration-methods-during.md#configuration-options-during-ebcli-ebextensions)
+ [AWS CLI](environment-configuration-methods-during.md#configuration-options-during-awscli-ebextensions)

**Topics**
+ [Configurações de opção](ebextensions-optionsettings.md)
+ [Personalizar software em servidores Linux](customize-containers-ec2.md)
+ [Personalizar software em Windows Servers](customize-containers-windows-ec2.md)
+ [Adicionar e personalizar recursos do ambiente do Elastic Beanstalk](environment-resources.md)