如何在 AWS 上安装 Lambda 函数?

How to install Lambda function on AWS?

好的,我是使用 Amazon Web Services 的新手,一切看起来都一团糟,我现在不确定该怎么做。

我想做的是使用 Lambda 函数调整上传到 S3 存储桶的图像的大小。为此,我发现 an AWS Lambda Function to resize/reduce images automatically 适合我的需要。

这是它的安装

$ git clone git@github.com:ysugimoto/aws-lambda-image.git
$ cd aws-lambda-image
$ npm install .

所以我想,首先我应该通过 SSH 连接到 AWS。为此,我遵循了 AWS 教程:Setup Steps for SSH Connections to AWS CodeCommit Repositories on Windows

如预期的那样以成功消息结束,随后出现错误:"You have successfully authenticated over SSH. You can use Git to interact to the AWS CodeCommit. Interactive Shells are not supported. FATAL ERROR: Server closed network connection"

接下来,我该如何实际安装此 Lambda 函数?

当不允许交互式 SSH 连接时,我如何 运行 这样的命令来配置上述功能 $ cp config.json.sample config.json?任何想法或线索?我做错了吗?

Tutorial: Using AWS Lambda with Amazon S3 展示了如何实施 Lambda 函数来调整上传到 Amazon S3 的图像的大小。

此外,作为调整图像大小的替代方法,请考虑使用动态调整大小服务,例如 Cloudinary and Imgix

我怀疑您想使用教程中提到的 git-部署和 运行 aws cli 命令的形式作为 post-提交挂钩? CodeCommit 仅提供 源代码控制,没有钩子或 shell 访问权限,因此它不能充当 packaging/deployment 机器。

最简单的解决方案是使用本地计算机执行此操作,可选择从 CodeCommit 或本地存储库中克隆内容。有一些工具可以自动执行此操作,例如 node-lambda or node-aws-lambda

如评论中所述,替代方法是创建一个小型 EC2 实例作为打包机。