AWS Lambda:如何使用必须首先在linux中安装的工具?

Jinsong Li

我知道AWS Lambda在隔离环境的应用程序层上运行。

在许多情况下,功能需要使用必须首先在linux计算机上安装的第三方工具。例如,媒体处理功能使用exiftool从图像中提取元数据,因此我exiftool首先安装

现在,我想将媒体处理代码迁移到AWS Lambda中。我的问题是,如何使用最初必须在linux上安装的那些工具?我的代码是用Java编写的,并且exiftool是必需的。

阿文特

Lambda函数执行的所有内容都必须包含在您上载的部署包中。

这意味着如果您要运行Java代码,则可以引用其他Java库。(同样,如果要运行Node.js代码,则可以引用其他Node库。)

无论使用哪种工具,生成的.zip文件都必须具有以下结构:

  • 根级别的所有编译的类文件和资源文件。

  • 运行/ lib目录中的代码所需的所有jar。

来源

或者,您可以上传.jar文件。

exiftool另一方面,是Perl命令行程序。我怀疑在您的本地计算机上,您从Java代码中脱壳并运行了它。

您无法在AWS Lambda中执行此操作。您需要找到一个提取EXIF信息的Java包(我敢肯定有很多选择)并将其包含在您的部署包中。您不能在Lambda上安装软件包。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章