如何从Node.js AWS Lambda函数运行Python脚本

时间:2019-01-17 12:19:28

标签: python node.js aws-lambda

here所述,可以从Node.js Lambda函数运行非Node.js可执行文件。

具有Node.js Lambda函数我想使用Node.js的 child_process 命令运行Python脚本。

我遵循了this AWS教程,并在我的.js函数开始时添加了以下内容:

process.env[‘PATH’] = process.env[‘PATH’] + ‘:’ + process.env[‘LAMBDA_TASK_ROOT’];

主要的Python脚本调用从此处开始:

const { spawn } = require('child_process');

function calculateSomething(next) {
  var script = spawn('python', ['my_python_script.py', args]);

  script.stdout.on('data', (data) => { doSomething(data); });
  script.on('error', (error) => { console.error(error); });
  script.on('exit', () => { next(); });
}

Python脚本使用外部库(例如numpy)运行,因此我必须使用pip进行安装。

现在:

  • 在Node.js Lambda中安装pip库需要做什么?
  • 是否足以将我的Python脚本与Node.js函数链接起来,以便在我的.js函数开始时添加此process.env[‘PATH’] = process.env[‘PATH’] + ‘:’ + process.env[‘LAMBDA_TASK_ROOT’];

与其他问题this相似。

1 个答案:

答案 0 :(得分:1)

您需要custom runtime才能运行多种语言