Installation des dépendances de votre application - AWS Elastic Beanstalk

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Installation des dépendances de votre application

Votre application peut avoir des dépendances sur d'autres packages PHP. Vous pouvez configurer votre application pour installer ces dépendances sur les instances Amazon Elastic Compute Cloud (Amazon EC2) de l'environnement. Vous pouvez également inclure les dépendances de votre application dans le bundle source et les déployer avec l'application. La section ci-après décrit chacune de ces méthodes.

Utilisation d'un fichier Composer pour installer des dépendances sur les instances

Utilisez un fichier composer.json à la racine de votre source de projet afin d'utiliser Composer pour installer les packages dont votre application a besoin sur les instances Amazon EC2 de votre environnement.

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

Lorsqu'un fichier composer.json est présent, Elastic Beanstalk exécute composer.phar install pour installer les dépendances. Vous pouvez ajouter des options à joindre à la commande en définissant l'option composer_options dans l'espace de noms aws:elasticbeanstalk:container:php:phpini.

Inclusion des dépendances dans la solution groupée source

Si votre application possède un grand nombre de dépendances, leur installation peut prendre beaucoup de temps. Il peut en résulter un nombre accru d'opérations de déploiement et de mise à l'échelle, car les dépendances sont installées sur chaque nouvelle instance.

Pour éviter d'accroître le temps de déploiement, utilisez Composer dans votre environnement de développement afin de résoudre les dépendances et de les installer dans le dossier vendor.

Pour inclure des dépendances dans le bundle source de votre application
  1. Exécutez la commande suivante :

    % composer install
  2. Incluez le dossier vendor généré dans la racine du bundle source de votre application.

Lorsque Elastic Beanstalk trouve un dossier vendor sur l'instance, il ignore le fichier composer.json (même s'il existe). Votre application utilise alors les dépendances issues du dossier vendor.