3

AWS lambda 不支持在系统上安装 linux 二进制文件,您必须在系统上包含可执行文件。这对于已经提供静态可执行文件的可执行文件(例如ffmpeg )来说很容易。

这对于编译为 using 的节点二进制插件如何工作node-gyp?简单地包括build/来自 linux 环境的目录会起作用吗?

有没有人弄清楚这一点?

4

1 回答 1

1

在我们的例子中,它是 node-dv 模块,它是使用node-gyp. 以下步骤使其工作:

  1. 生成新的 EC2 实例。确保它基于与您的 AWS Lambda 运行时完全相同的映像。您可以在此处查看 Lambda 环境详细信息:http: //docs.aws.amazon.com/lambda/latest/dg/current-supported-versions.html在我们的例子中,它是名为amzn-ami-hvm-2015.03.0.x86_64-gp2 的Amazon Linux AMI 。

  2. 安装nvm并使用它来安装与 AWS Lambda 相同版本的 Node.js。在撰写本文时,它是v0.10.36。您可以再次参考http://docs.aws.amazon.com/lambda/latest/dg/current-supported-versions.html进行查找。

  3. 您可能需要在 EC2 上安装 git & g++ 编译器。你可以这样做

    sudo yum install git gcc-c++
  4. 最后,将您的应用克隆到新的 EC2 并安装应用的依赖项:

    nvm use 0.10.36
    npm install --production
    
于 2015-12-01T11:50:09.980 回答