Instalar dependências da aplicação PHP do Elastic Beanstalk - AWS Elastic Beanstalk

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

Instalar dependências da aplicação PHP do Elastic Beanstalk

Este tópico descreve como configurar a aplicação para instalar outros pacotes PHP necessários. Seu aplicativo pode ter dependências em outros pacotes PHP. É possível configurar a aplicação para instalar essas dependências nas instâncias do Amazon Elastic Compute Cloud (Amazon EC2) do ambiente. Como alternativa, você pode incluir as dependências do aplicativo no pacote de origem e implantá-las com o aplicativo. A seção a seguir discute cada uma dessas maneiras.

Usar um arquivo do Composer para instalar dependências em instâncias

Use um arquivo composer.json na raiz da origem de seu projeto para usar o Composer para instalar os pacotes exigidos pela aplicação nas instâncias do Amazon EC2 do ambiente.

exemplo composer.json
{ "require": { "monolog/monolog": "1.0.*" } }

Quando um arquivo composer.json está presente, o Elastic Beanstalk executa composer.phar install para instalar dependências. Você pode adicionar opções para acrescentar ao comando definindo a opção composer_options no namespace aws:elasticbeanstalk:container:php:phpini.

Incluir dependências no pacote de origem

Se o seu aplicativo tiver um grande número de dependências, sua instalação poderá demorar muito tempo. Isso pode aumentar a implantação e as operações de escalabilidade, porque as dependências são instaladas em cada nova instância.

Para evitar o impacto negativo no momento da implantação, use o Composer em seu ambiente de desenvolvimento para resolver dependências e instalá-las na pasta vendor.

Para incluir dependências em seu pacote de origem do aplicativo
  1. Execute o seguinte comando:

    % composer install
  2. Inclua a pasta vendor gerada na raiz do seu pacote de origem do aplicativo.

Quando o Elastic Beanstalk encontra uma pasta vendor na instância, ele ignora o arquivo composer.json (mesmo se ele existir). O aplicativo usa as dependências da pasta vendor.