AWS层:使用Nodejs层时添加“ / opt /”路径

时间:2019-05-01 22:07:33

标签: amazon-web-services serverless-framework

因此,我使用无服务器框架将该层上传到了AWS:

xs:int

我需要的库位于“ nodejs”目录中,其中放置了我的packages.json文件和所有“ node_modules”目录。到目前为止,一切看起来还不错,但是当我尝试运行使用“ node-webstormlibs”层的lambda时,得到的消息是:

service: webstorm-layer

 provider:
   name: aws
   runtime: nodejs8.10
   region: us-east-1

layers:
  nodejs:
   path: nodejs                    # path to contents on disk
   name: node-webstormlibs         # optional, Deployed Lambda layer name
   description: JS shared libs for node
   compatibleRuntimes:
     - nodejs8.10
   allowedAccounts:
     - '*'

pg模块实际上存在于创建图层的zip文件中。然后,我对如何导入该层内部的模块存有疑问。在一些教程中,我看到了:

"errorMessage": "Cannot find module 'pg'",

一如既往,但在其他方面,我看到了:

import pg from "pg";

甚至:

 import pg from "/opt/pg";

我不知道我的serverless.yml中的“ path:”选项是否正确。

在服务器中,路径为:

 import pg from "/opt/nodejs/node_modules/pg";

更新

将所有内容都放在目录/ nodejs / node8中,就可以了。

0 个答案:

没有答案