我有一个问题,我有几个 .config
文件在我 .ebextensions
. 而我的 buildspec.yml
看起来是这样的。
version: 0.2
artifacts:
files:
- .ebextensions/**/*
phases:
install:
runtime-versions:
php: 7.4
build:
commands:
- echo Build started on `date`
- echo installing composer..
- composer install --no-interaction --prefer-dist
post_build:
commands:
- echo Build completed on `date`
- echo Pushing the Docker image...
在AWS CodeBuild中,我的流水线一直在中断,因为composer试图安装一些包,比如 ffmpeg
和 libz
中指定的 .ebextensions
从未被调用。
我的输出看起来是这样的。
[Container] 2020/05/03 12:19:49 Waiting for agent ping
[Container] 2020/05/03 12:19:51 Waiting for DOWNLOAD_SOURCE
[Container] 2020/05/03 12:20:11 Phase is DOWNLOAD_SOURCE
[Container] 2020/05/03 12:20:11 CODEBUILD_SRC_DIR=/codebuild/output/src119370068/src
[Container] 2020/05/03 12:20:11 YAML location is /codebuild/output/src119370068/src/buildspec.yml
[Container] 2020/05/03 12:20:11 No commands found for phase name: install
[Container] 2020/05/03 12:20:11 Processing environment variables
[Container] 2020/05/03 12:20:12 Selecting 'php' runtime version '7.4' based on manual selections...
[Container] 2020/05/03 12:20:12 Running command echo "Installing PHP version 7.4 ..."
Installing PHP version 7.4 ...
[Container] 2020/05/03 12:20:12 Running command phpenv global $PHP_74_VERSION
7.4.1
[Container] 2020/05/03 12:20:15 Moving to directory /codebuild/output/src119370068/src
[Container] 2020/05/03 12:20:15 Registering with agent
[Container] 2020/05/03 12:20:15 Phases found in YAML: 3
[Container] 2020/05/03 12:20:15 INSTALL: 0 commands
[Container] 2020/05/03 12:20:15 BUILD: 9 commands
[Container] 2020/05/03 12:20:15 POST_BUILD: 2 commands
[Container] 2020/05/03 12:20:15 Phase complete: DOWNLOAD_SOURCE State: SUCCEEDED
[Container] 2020/05/03 12:20:15 Phase context status code: Message:
[Container] 2020/05/03 12:20:15 Entering phase INSTALL
[Container] 2020/05/03 12:20:15 Phase complete: INSTALL State: SUCCEEDED
[Container] 2020/05/03 12:20:15 Phase context status code: Message:
[Container] 2020/05/03 12:20:15 Entering phase PRE_BUILD
[Container] 2020/05/03 12:20:15 Phase complete: PRE_BUILD State: SUCCEEDED
[Container] 2020/05/03 12:20:15 Phase context status code: Message:
[Container] 2020/05/03 12:20:15 Entering phase BUILD
[Container] 2020/05/03 12:20:15 Running command echo Build started on `date`
Build started on Sun May 3 12:20:15 UTC 2020
[Container] 2020/05/03 12:20:15 Running command echo installing composer..
installing composer..
它正在安装 composer
但从未安装 ebextensions
. 我做错了什么?
CodeBuild不理解 "ebextensions"。这个目录只对Elastic Beanstalk命令处理器有意义。
对于CodeBuild,请在buildpec中手动运行安装命令。