我希望实现此处概述的答案:https://stackoverflow.com/a/50397276/1980516
但是,我发现我一直在此行碰到Unable to import module 'index'
:
const _archiver = require('archiver');
因此,我猜想我无法通过在线控制台执行此操作。相反,我可能必须创建一个部署程序包。
我该如何处理?我显然需要AWS CLI,Node.js,npm,而我是新手。在Amazon文档中,我找不到有关如何设置本地开发环境的实用列表。
我应该安装哪些工具,确切版本和顺序?
编辑:Windows:)
答案 0 :(得分:3)
我的猜测是,您需要npm安装存档器,并将node_modules依赖项与index.js(用于lambda入口点的处理程序文件)一起打包。您可以压缩并将其部署/上传到您的lambda。
还可以看看https://github.com/serverless/serverless框架,它将使这些事情变得更容易。
答案 1 :(得分:2)
看看AWS SAM(无服务器应用程序模型)。它为诸如Lambda函数和API Gateway端点之类的事物提供了本地开发设置,以及一种轻松打包和部署事物的方法。您需要的确切步骤是:
aws configure
进行配置)sam init --runtime nodejs
(或需要时使用其他运行时版本)初始化新的SAM项目如果您不想使用框架或本地开发环境,而只想创建源包,则有docs。要点是:
npm install
您需要的模块node_modules
文件夹的代码