当前位置: 首页 > 知识库问答 >
问题:

使用AWS Lambda编译本机代码(npm安装)的软件包

林意蕴
2023-03-14

我需要使用sharp软件包来调整Lambda函数中的图像大小,但它在我的Windows机器中进行“NPM安装”时构建了本机代码,这在承载Lambda的Amazon Linux服务器中肯定行不通。

在使用无服务器时,有什么推荐的方法来解决这个问题?

共有1个答案

严瀚昂
2023-03-14

如果您希望与无服务器框架更清晰地集成,可以将NPM包安装到安装到工作目录的Docker容器中:

对于节点V6.10:

$docker run-v“$pwd”:/var/task lambci/lambda:build-nodejs6.10 npm install

这是使用来自Lambci的Docker容器,它非常接近实际的AWS Lambda环境。

 类似资料:
  • 问题内容: 是否存在任何npm选项来在安装软件包时禁用安装后脚本?还是要重写package.json中的任何字段? 问题答案: 仅禁用脚本是不可能的。但是,您可以使用以下命令禁用所有脚本: 正如注释中提到的delbertooo一样,这也会禁用依赖项的脚本。

  • 问题内容: 如何找到已安装的node.js / npm 软件包 的版本? 这将打印npm本身的版本: 这将显示一个神秘的错误: 这将 在注册表上 打印软件包版本(即可用的最新版本): 如何获得已 安装的版本 ? 问题答案: 用于本地软件包或全局安装的软件包。 您可以通过传递特定软件包的名称作为参数来查找其版本。例如,将导致: 或者,您可以直接运行而无需将软件包名称作为参数来查看所有软件包的版本:

  • 问题内容: 我找到了如何以编程方式安装npm软件包,并且代码可以正常工作: 如果要安装软件包的第一个版本,如何使用模块在NodeJS端进行安装? 我知道我可以使用子进程,但是我想选择模块解决方案。 问题答案: NPM NodeJS API没有很好的文档说明,但是检查代码会有所帮助。 在这里,我们找到以下字符串: 我的问题是关于版本的,所以我们可以做:安装的版本。 我没有进行测试,但是我确信我们可以

  • 问题内容: 在软件包目录中使用安装节点软件包时,完成开发后如何卸载软件包? 将软件包安装为系统全局软件包位置(’/ usr / local / lib`)中的符号链接。这样,您就可以在仍在开发程序包的情况下对其进行测试,而不必一遍又一遍地安装它。 我需要运行哪个npm命令来再次删除链接? 问题答案: 可以使用可用于删除已安装软件包的相同 卸载 或 rm 命令来 卸载 软件包。唯一要记住的是,该链接

  • 本文向大家介绍ubuntu编译nodejs所需的软件并安装,包括了ubuntu编译nodejs所需的软件并安装的使用技巧和注意事项,需要的朋友参考一下 闲了一段时间后,要开始做个项目了! 公司以java为主,因此一直以来的技术栈为springboot,zookeeper,jredis,dubbo,druid.....经典的分布式服务器体系架构。 我花了点时间,统计了一下maven中的依赖包,共计3

  • 问题内容: 有人可以告诉我在哪里可以找到使用我安装的Node.js模块 吗? 问题答案: 全球图书馆 您可以运行以查看安装了哪些全局库以及它们的位置。使用用于显示人的路截断输出。如果您只想显示主软件包而不显示与其一起安装的子软件包(可以使用),则可以使用- 将显示所有软件包并仅获取全局安装的软件包,只需添加-g ie即可。 在Unix系统上,它们通常放在全局中或在全局中安装。如果将环境变量设置为此