Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Aws lambda 适用于psycopg2的AWS Lambda层_Aws Lambda_Python 3.7_Psycopg2_Aws Lambda Layers - Fatal编程技术网

Aws lambda 适用于psycopg2的AWS Lambda层

Aws lambda 适用于psycopg2的AWS Lambda层,aws-lambda,python-3.7,psycopg2,aws-lambda-layers,Aws Lambda,Python 3.7,Psycopg2,Aws Lambda Layers,我正在尝试创建一个新的lambda层来导入带有psycopg2的zip文件,因为库使我的部署包超过3MB,并且我再也看不到lambda函数中的内联代码了 我使用Python 3.7为以下两种情况创建了lambda层: psycopg2_lib.zip(包含psycopg2、psycopg2_binary.libs和psycopg2_binary-2.8.5.dist-info文件夹) psycopg2_only.zip,它只包含psycopg2文件夹 我将新创建的层添加到lambda函数中。

我正在尝试创建一个新的lambda层来导入带有psycopg2的zip文件,因为库使我的部署包超过3MB,并且我再也看不到lambda函数中的内联代码了

我使用Python 3.7为以下两种情况创建了lambda层:

  • psycopg2_lib.zip(包含psycopg2、psycopg2_binary.libs和psycopg2_binary-2.8.5.dist-info文件夹)
  • psycopg2_only.zip,它只包含psycopg2文件夹
我将新创建的层添加到lambda函数中。 但是,在这两种情况下,lambda_函数都会抛出如下错误: { “errorMessage”:“无法导入模块‘lambda_函数’:没有名为‘psycopg2’的模块”, “errorType”:“Runtime.ImportModuleError” }

这个错误似乎是我的zip文件出了问题,无法识别它们。但当它在我的部署包中运行良好时


任何帮助或理由都会非常感激。谢谢

不确定OP是否找到了解决方案,但以防其他人在这里登陆。我通过以下步骤解决了此问题:

  • 从以下位置下载代码/克隆git:
  • 如果为python3.7构建,请创建以下目录树,否则将“python3.7”替换为版本选项:
    mkdir-p python/lib/python3.7/site packages/psycopg2
  • 选择感兴趣的python版本,并从步骤1中下载的文件夹中复制文件。到步骤2中的目录树。e、 g.如果为python 3.7构建层:
    cp psycopg2-3.7/*python/lib/python3.7/site packages/psycopg2
  • 为图层创建zip文件。e、 g.:
    zip-r9 psycopg2-py37.zip python
  • 在控制台或cli中创建一个层并上载zip

  • 不确定OP是否找到了解决方案,但以防其他人在这里着陆。我通过以下步骤解决了此问题:

  • 从以下位置下载代码/克隆git:
  • 如果为python3.7构建,请创建以下目录树,否则将“python3.7”替换为版本选项:
    mkdir-p python/lib/python3.7/site packages/psycopg2
  • 选择感兴趣的python版本,并从步骤1中下载的文件夹中复制文件。到步骤2中的目录树。e、 g.如果为python 3.7构建层:
    cp psycopg2-3.7/*python/lib/python3.7/site packages/psycopg2
  • 为图层创建zip文件。e、 g.:
    zip-r9 psycopg2-py37.zip python
  • 在控制台或cli中创建一个层并上载zip

  • 您将psycopg2包放在层内的路径是什么?您将psycopg2包放在层内的路径是什么?