Как общаться между слоями AWS? - PullRequest
0 голосов
/ 30 января 2019

Привет! Мне нужно знать, как получить доступ к файлу, который хранится в слое AWS.

Я использую Lambda Ghost Script и PDF2IMG Lambda Friendly , чтобысоздавать PDF-метки.

Я был использован для сжатия всех файлов в один ZIP-файл и загружен в AWS Lambda (его размер около 50 МБ), и он имел следующую структуру:

  • /node_modules / => Здесь pdf2img-lambda-friendly
  • / lambda-ghostscript / => Вот библиотека ghostscript, используемая pdf2img
  • / assets /
  • / index.js

До уровней AWS развертывание было ужасным, поскольку я не мог вносить изменения непосредственно в AWS из-за огромного размера пакета.

После уровней AWS я мог разделить все библиотеки (node_modules) и положить их в слой, который уменьшил размер моей упаковки.Я пытался сделать то же самое с папкой lambda-ghostscript, но библиотека pdf2img-lambda-friendly) не может связаться с ghostscript, я получаю ошибку ENOENT.

Я пытался с несколькими комбинациями слоев для«сохранить» приведенную выше структуру, даже поместив GhostScript в отдельный слой, но он не сработал.

Это структуры слоев, которые я пробовал:

1) Один слой:


/ nodejs / node_modules / / nodejs / lambda-ghostcript /


2) Два разных слоя:


/ nodejs / node_modules /



/ nodejs / lambda-ghostscript /


Лучшее, что я мог сделать, это поместить все библиотеки в слой и сохранить код и GhostScript в лямбде,и это работает, но это не решает мою проблему развертывания, так как это все еще огромный пакет, и я не могу редактировать код в Консоли AWS.

Я хотел бы оставить только мой код в лямбда-выражении и отделить остальныебиблиотек и скриптов, чтобы я мог вносить изменения в AWКонсоль S, но я не знаю, возможно ли это с уровнями AWS.

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...