在使用AWS Lambda时,使用node_modules的备忘录

我在使用AWS Lambda和Node.js时遇到了一些困难,尝试使用node_modules中的库,因此我想将其作为备忘录记录下来。

接下来,我将根据圣诞日历的顺序,写一写输出的重要性。

引用整个 node_modules 文件夹

前提条件- 提前设定的一些必要条件或限制,是某个行动或事物发生的前提。

    • npm コマンドが使える環境があること

ローカルマシンでも問題ありません

简单的步骤

    1. 准备目录

 

    1. 安装所需的库

 

    1. 将目录压缩成zip文件

 

    1. 注册图层

 

    1. 在Lambda函数中添加图层

 

    在Lambda函数的代码中加载库

准备目录

一开始就非常重要。可在任何位置(甚至本地机器上)创建,但目录名很重要。
创建一个名为 “nodejs” 的目录。

$ mkdir nodejs

关于这个问题,文件中有说明。

安装所需的库。

在生成的目录中,运行命令以安装库。

$ cd nodejs
$ npm i <ライブラリ名>

在这里,我们先来重新审视一下nodejs目录的结构。
只要按照以下方式组织,就可以了。

nodejs/node_modules/<ライブラリ名>

将目录压缩成zip文件。

将nodejs目录压缩为zip文件。
生成的zip文件可以使用任何名称。
如果是在Windows环境中,即使没有命令也可以生成zip文件,但若在无法生成的环境下,则可以使用命令进行压缩。

$ zip -r lib.zip ./nodejs

图层注册

将生成的zip文件注册到AWS Lambda的层级中。

スクリーンショット1.png
スクリーンショット2.png
スクリーンショット3.png

使用Lambda函数添加层

在编辑Node.js Lambda函数的界面底部,有一个设置图层的位置。选择”添加图层”。

スクリーンショット4.png
スクリーンショット5.png

在Lambda函数的代码中加载库。

如果能够添加图层,就可以从代码中进行读取。
到此结束!辛苦了!

const HOGE = require('<ライブラリ名>');

输出的原因

接下来我将谈论关于产出的好处。

我个人认为最重要的是能够整理和保存信息的能力。

这次我总结了使用AWS Lambda时遇到的问题并作为文章发布。
在适应过程中,我一直在摸索并不断尝试。
换句话说,现在的信息是一团糟。

即使找到了解决方法,如果不立即输出的话会发生什么呢?
我想很可能会忘记并在下次类似情况出现时再次检索同样的事情。

当人编写的代码在几个月后看的时候,人类会立刻忘记并觉得:“这谁写的屎一样的代码?”

假设这次,我们将在Qiita上发布文章。
由于希望让更多人看到这篇文章,我们会考虑如何写这篇文章。
(这里的“更多人”也包括未来的我自己)

通过思考这些问题,可以整理出本次获得的信息。这些混乱的信息将会被整理清楚。

将信息整理并保存在一起,我们可以在之后回顾,或者向更理解该领域的人寻求意见。

互相交流意見对个人的成长有很大的帮助。如果能够通过表达自己和他人的成长而使人高兴的话,那就太好了。

广告
将在 10 秒后关闭
bannerAds