AWSLambda中无法从层导入包
创始人
2024-09-26 11:31:27
0

Lambda中的层没有模块级别,因此无法从层中导入包。但是,可以将所有依赖项打包为一个zip文件,并将其上传到Lambda中作为Lambda的部分。然后,您可以从该Zip文件导入任何模块。

以下是一个示例,将所有依赖项打包为Zip文件并上传到Lambda中:

import boto3
import io
import zipfile

def lambda_handler(event, context):
    # Define local variables
    s3 = boto3.resource('s3')
    layer_bucket_name = 'my-layer-bucket'
    layer_key = 'my-layer.zip'
    layer_name = 'my-layer'
    region = 'us-west-2'
    
    # Create an in-memory buffer for the zip file
    buffer = io.BytesIO()
    
    # Create the zip file with the packages
    with zipfile.ZipFile(buffer, mode='w') as zip_file:
        # Add the packages to the zip file
        zip_file.write('requests/__init__.py', 'requests/__init__.py')
        zip_file.write('requests/api.py', 'requests/api.py')
        # Add other required packages
    
    # Upload the zip file to S3
    s3.Bucket(layer_bucket_name).put_object(Key=layer_key, Body=buffer.getvalue())

    # Define the Lambda layer
    lambda_client = boto3.client('lambda', region_name=region)
    layer_arn = lambda_client.publish_layer(
        LayerName=layer_name,
        Content={
            'ZipFile': buffer.getvalue()
        },
        CompatibleRuntimes=[
            'python3.6',
            'python3.7',
            'python3.8'
        ]
    )['LayerVersionArn']
    
    # Use the Lambda layer
    function_client = boto3.client('lambda', region_name=region)
    response = function_client.update_function_configuration(
        FunctionName='my-function-name',
        Layers=[
            layer_arn
        ]
    )
    
    return response

在此示例中,'requests”软件包添加到Zip文件中,并将其作为Lambda的层发布。然后,将Lambda函数的关联配置更新为使用该层。

请注意,您需要将所有软件包添加到Zip文件中,并将其作为层发布,以供Lambda函数使用。

相关内容

热门资讯

解迷一下!边锋斗地主插件辅助脚... 解迷一下!边锋斗地主插件辅助脚本,决战卡五星作弊,切实存在有挂(哔哩哔哩);1、每一步都需要思考,不...
解迷一下!佛手在线大菠萝可以作... 解迷一下!佛手在线大菠萝可以作弊码,新星游辅助软件下载,都是有挂(哔哩哔哩)1、佛手在线大菠萝可以作...
解密一下!广西优乐免费辅助,陕... 解密一下!广西优乐免费辅助,陕西奇迹打锅子破解,确实是真的有挂(哔哩哔哩)1、让任何用户在无需广西优...
科普一下!陕西三带辅助,新九天... 科普一下!陕西三带辅助,新九天辅助,总是存在有挂(哔哩哔哩)该软件可以轻松地帮助玩家将陕西三带辅助外...
揭幕一下!闲聚辅助器,八仙游戏... 揭幕一下!闲聚辅助器,八仙游戏辅助,都是是真的有挂(哔哩哔哩)1、进入游戏-大厅左侧-新手福利-激活...
详细一下!多乐够级辅助,浙江游... 详细一下!多乐够级辅助,浙江游戏大厅修改器,原来有挂(哔哩哔哩)多乐够级辅助透视方法中分为三种模型:...
解谜一下!小程序牵手跑得有外挂... 解谜一下!小程序牵手跑得有外挂吗,人海大厅脚本,原来是真的有挂(哔哩哔哩)1、进入到小程序牵手跑得有...
开挂一下!内蒙麻将外卦神器下载... 开挂一下!内蒙麻将外卦神器下载,上饶中至能操控吗,本来真的是有挂(哔哩哔哩)内蒙麻将外卦神器下载透视...
教你一下!点我达辅助,玄龙辅助... 教你一下!点我达辅助,玄龙辅助工具,原来有挂(哔哩哔哩)1、点我达辅助免费辅助多个强度级别选择2、点...
曝光一下!钱塘十三水透视,一起... 曝光一下!钱塘十三水透视,一起宁德钓蟹辅助器,竟然存在有挂(哔哩哔哩)1、钱塘十三水透视透视辅助软件...