如何在AWS上安装Lambda函数?

时间:2016-04-08 01:21:43

标签: git amazon-web-services ssh amazon-s3 aws-lambda

好的,我刚开始使用亚马逊网络服务,一切看起来都很乱,我不确定在这一点上走哪条路。

我要做的是使用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

以成功的消息结束,然后出现错误,如预期的那样:“您已通过SSH成功​​通过身份验证。您可以使用Git与AWS CodeCommit进行交互。不支持交互式Shell。致命错误:服务器关闭网络连接“

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

如何在不允许交互式SSH连接的情况下配置上述函数$ cp config.json.sample config.json,如何运行这些命令?任何想法或线索?我做错了吗?

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:1)

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

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

备注,如评论中所述,将创建一个小的EC2实例作为包装机。