Ошибка при использовании модуля Sharp в AWS lambda

#node.js #amazon-web-services #aws-lambda #sharp

#node.js #amazon-веб-сервисы #aws-лямбда #острый #aws-lambda #sharp

Вопрос:

Я развертываю lambda в AWS, который использует модуль Sharp для изменения размера изображения.

Несмотря на использование Linux для развертывания, возникает следующая ошибка:

«Что-то пошло не так при установке модуля sharp,

 Module parse failed: Unexpected character 'u007f' (1: 0),
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders,
(Source code omitted for this binary file), "
  

В своем исследовании я увидел, что проблема была связана с операционной системой. Что sharp необходимо было установить с помощью «npm install —arch = x64 —platform = linux sharp».
Однако проблема продолжает возникать.

Эта проблема возникает даже при использовании linux x84_64, кто-нибудь знает, что это может быть?

Комментарии:

1. Среды выполнения Lambda JavaScript выполняются в ОС Amazon Linux 2. Вы могли бы продолжить расследование этой проблемы, запустив экземпляр EC2 с той же ОС, а затем разработав, что вам нужно сделать там, чтобы заставить Sharp работать. После того, как вы это сделаете, включите соответствующий пакет в свою загрузку Lambda.

2. Вы нашли решение?

3. @nacho Да, я сделал. Мне нужно было использовать AWS Lambda Layer. Я оставил там ссылку на Sharp. Через некоторое время я наткнулся на это руководство, которое можно использовать: javascript.plainenglish.io /…