本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Elastic Beanstalk 上更新 Composer
本主题介绍如何配置 Elastic Beanstalk 以使 Composer 保持最新状态。如果您在尝试安装带有 Composer 文件的程序包时看到错误,或者无法使用最新的平台版本,则可能必须更新 Composer。在平台更新之间,您可以通过使用 .ebextensions 文件夹中的配置文件来更新环境实例中的 Composer。
您可以使用以下配置自行更新 Composer。
commands:
01updateComposer:
command: /usr/bin/composer.phar self-update 2.7.0
以下选项设置设置 COMPOSER_HOME
环境变量,其配置 Composer 缓存的位置。
option_settings:
- namespace: aws:elasticbeanstalk:application:environment
option_name: COMPOSER_HOME
value: /home/webapp/composer-home
您可以将这两者合并到 .ebextensions
文件夹中的同一个配置文件中。
例 .ebextensions/composer.config
commands:
01updateComposer:
command: /usr/bin/composer.phar self-update 2.7.0
option_settings:
- namespace: aws:elasticbeanstalk:application:environment
option_name: COMPOSER_HOME
value: /home/webapp/composer-home
注意
由于 2024 年 2 月 22 日 AL2023 平台版本和 2024 年 2 月 28 日 AL2 平台版本中 Composer 安装的更新,如果在执行自行更新时设置了 COMPOSER_HOME
,则 Composer 自行更新可能会失败。
以下组合命令将无法执行:export COMPOSER_HOME=/home/webapp/composer-home && /usr/bin/composer.phar
self-update 2.7.0
但是,前面的示例仍然有效。在前面的示例中,COMPOSER_HOME
的选项设置不会传递给 01updateComposer
执行,也不会在执行自行更新命令时进行设置。
重要
如果您在 composer.phar self-update
命令中省略了版本号,则在您每次部署到源代码时,以及 Auto Scaling 预配置新实例时,Composer 将更新到可用的最新版本。如果发行了与您应用程序不兼容的 Composer 版本,这可能导致扩展操作和部署失败。
有关 Elastic Beanstalk PHP 平台,包括 Composer 的版本的更多信息,请参阅文档 AWS Elastic Beanstalk 平台中的 PHP 平台版本。