我需要使用sharp包来调整 Lambda 函数中的图像大小,但它会在我的 Windows 机器上执行“npm install”时构建本机代码,这在托管 Lambda 的 Amazon Linux 服务器中肯定不起作用。
使用无服务器时解决此问题的推荐方法是什么?
我需要使用sharp包来调整 Lambda 函数中的图像大小,但它会在我的 Windows 机器上执行“npm install”时构建本机代码,这在托管 Lambda 的 Amazon Linux 服务器中肯定不起作用。
使用无服务器时解决此问题的推荐方法是什么?
如果你想更干净地与无服务器框架集成,你可以将你的 NPM 包安装在一个挂载到你的工作目录的 Docker 容器中:
对于节点 v6.10:
$ docker run -v "$PWD":/var/task lambci/lambda:build-nodejs6.10 npm install
对于节点 v4.3:
$ docker run -v "$PWD":/var/task lambci/lambda:build-nodejs4.3 npm install
这将安装您的所有软件包package.json
并将其安装node_modules/
在您的目录中。
这是使用来自Lambci的 Docker 容器,它非常接近实际的 AWS Lambda 环境。