【问题标题】:'Cannot find module fluent-ffmpeg' on AWS LambdaAWS Lambda 上的“找不到模块 fluent-ffmpeg”
【发布时间】:2016-04-04 01:23:50
【问题描述】:

我正在 AWS Lambda 上运行视频处理脚本。

虽然它似乎在本地完美运行(使用 lambda-local 测试),但在 Lambda 上运行时我遇到了一个奇怪的问题:

{
  "errorMessage": "Cannot find module 'fluent-ffmpeg'",
  "errorType": "Error",
  "stackTrace": [
    "Function.Module._resolveFilename (module.js:338:15)",
    "Function.Module._load (module.js:280:25)",
    "Module.require (module.js:364:17)",
    "require (module.js:380:17)",
    "Object.<anonymous> (/var/task/processing.js:2:14)",
    "Module._compile (module.js:456:26)",
    "Object.Module._extensions..js (module.js:474:10)",
    "Module.load (module.js:356:32)",
    "Function.Module._load (module.js:312:12)",
    "Module.require (module.js:364:17)"
  ]
}

我上传的 ZIP 包含以下文件:

~$ find . -maxdepth 2
.
./bin
./bin/ffmpeg
./config.js
./event-samples
./event-samples/custom.js
./event-samples/dynamodb-update.js
./event-samples/kinesis.js
./event-samples/s3-put.js
./frames
./Gulpfile.js
./index.js
./node_modules
./node_modules/async
./node_modules/aws-sdk
./node_modules/fluent-ffmpeg
./node_modules/gulp
./node_modules/gulp-awslambda
./node_modules/gulp-zip
./package.json
./processing.js
./utils.js

(错误要求位于 processing.js

如果我打开 ZIP,node_modules/fluent-ffmpeg/* 确实存在。

我尝试使用以下方法包含模块:

  • require("./node_modules/fluent-ffmpeg/index")
  • require(__dirname + "./node_modules/fluent-ffmpeg/index")
  • require(process.env.LAMBDA_TASK_ROOT + "/node_modules/fluent-ffmpeg/index")

但是这些都没有解决问题。我还尝试在我的机器上重新安装 node 和 npm,rm -rf node_modulesnpm install(以防万一)。

由于 Lambda 运行 Node 0.10.36,我也尝试在我的机器上使用这个版本来执行 npm install,但这也没有改变任何东西。

帮助表示赞赏。

谢谢!

【问题讨论】:

  • 也许可以试试AWS fork instead
  • 除非我弄错了,这个库是用来调整大小和生成视频缩略图的,对吧?在那种情况下,这不适用于我需要做的事情(提取视频的每一帧)
  • 对不起,我以为是同一个库。

标签: javascript node.js amazon-web-services aws-lambda


【解决方案1】:

解决了。我的开发机器运行的是 Windows 7,这显然是导致问题的原因……不过,我会对原因感兴趣。

无论如何,在 Linux 安装上运行 npm install 并将代码上传到 Lambda 就可以了。

【讨论】:

    猜你喜欢
    • 2015-08-21
    • 1970-01-01
    • 1970-01-01
    • 2021-12-16
    • 2021-09-13
    • 2021-11-20
    • 2021-04-20
    • 2016-11-01
    • 1970-01-01
    相关资源
    最近更新 更多