#laravel #aws-serverless #laravel-vapor
#laravel #aws-бессерверный #laravel-vapor
Вопрос:
У меня есть базовое приложение Laravel 7.x, которое я пытаюсь развернуть в рабочей среде с помощью Vapor. когда он достигает Running Deployment Hooks
раздела развертывания, он завершается ошибкой со следующим сообщением.
An error occurred during deployment.
Message: Deployment hook failed.
A deployment hook failed. You may review its logs using the hook:log command.
Я проверил журналы для получения более подробной информации, и это говорит о том, что есть проблема с imagick
Загруженный композитор автозагрузил filePreparing для добавления секретов в runtimePreparing для загрузки FPM, гарантируя готовность к запуску FPMStarting процесса FPM…[14 сентября 2020 00:57:50] УВЕДОМЛЕНИЕ: Сообщение PHP: Предупреждение PHP: Запуск PHP: не удается загрузить динамическую библиотеку ‘imagick’ (пробовал: /opt /bin /imagick (/opt /bin / imagick: не удается открыть общий объектный файл: нет такого файла или каталога), /opt /bin /imagick.so (libMagickWand.so.5: не удается открыть общий объектный файл: нет такого файла или каталога)) в неизвестном на строка 0
Ответ №1:
Начиная с сегодняшнего дня, вы можете добавить поддержку Imagick в свои проекты, импортировав внешний лямбда-слой. Это изменение уменьшает размер стандартного уровня среды выполнения Vapor и позволяет клиентам, которые не используют Imagick, загружать более крупные приложения, не беспокоясь об ограничениях размера приложений AWS Lambda.
Вы можете добавить это следующим образом в свой vapor.yml:
environments:
staging:
layers:
- vapor:php-7.4
- vapor:php-7.4:imagick
Источник:https://blog .laravel.com/vapor-adding-imagick-as-a-separate-lambda-layer