Я изучаю, как я могу создать AWS лямбду в php, используя bref библиотеку
Поэтому, в соответствии с документацией я настроил окружение со следующей командной комбинацией:
sudo -H npm install -g serverless
composer require bref/bref
Затем с помощью следующей команды создал мою первую php лямбду:
vendor/bin/bref init
И я выбрал первый параметр PHP Function
, предоставленный дефолт. Создание следующего файла index.php
:
declare(strict_types=1);
require __DIR__.'/vendor/autoload.php';
lambda(function ($event) {
return 'Hello ' . ($event['name'] ?? 'world');
});
Затем я изменил свой serverless.yml
на:
service: app
provider:
name: aws
region: eu-central-1
runtime: provided
stage: ${opt:stage,'local'}
package:
exclude:
- '.gitignore'
plugins:
- ./vendor/bref/bref
functions:
dummy:
handler: index.php
name: Dummy-${self:provider.stage}
description: 'Dummy Lambda'
layers:
- ${bref:layer.php-73}
И я пытаюсь запустить его с помощью следующей команды:
sls invoke local --stage=local --docker --function dummy
Но я получаю следующую ошибку:
{"errorType":"exitError","errorMessage":"RequestId: 6403ebee-13b6-179f-78cb-41cb2f517460 Error: Couldn't find valid bootstrap(s): [/var/task/bootstrap /opt/bootstrap]"}
Поэтому я хочу спросить, почему я не могу запустить свою локальную лямбду?