轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
shogo82148/p5-aws-lambda
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

p5-aws-lambda Docker 镜像下载 - 轩辕镜像

p5-aws-lambda 镜像详细信息和使用指南

p5-aws-lambda 镜像标签列表和版本信息

p5-aws-lambda 镜像拉取命令和加速下载

p5-aws-lambda 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

p5-aws-lambda
shogo82148/p5-aws-lambda

p5-aws-lambda 镜像详细信息

p5-aws-lambda 镜像标签列表

p5-aws-lambda 镜像使用说明

p5-aws-lambda 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

AWS::Lambda镜像提供Perl支持,用于AWS Lambda自定义运行时,通过预构建的Lambda层和Docker镜像简化Perl函数的开发、部署及本地测试,支持***追踪和Paws SDK调用AWS API。
0 次下载activeshogo82148镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

p5-aws-lambda 镜像详细说明

p5-aws-lambda 使用指南

p5-aws-lambda 配置说明

p5-aws-lambda 官方文档

AWS::Lambda - Perl支持的AWS Lambda自定义运行时

镜像概述和主要用途

AWS::Lambda镜像基于lambci/lambda构建,旨在简化Perl脚本在AWS Lambda中的运行。通过预构建的Lambda层、Docker本地测试环境及配套工具,开发者可快速开发、部署和调试Perl语言的AWS Lambda函数,支持AWS ***请求追踪和Paws(Perl AWS SDK)调用AWS服务。

核心功能和特性

  • 多Perl版本支持:提供Perl 5.32、5.30、5.28、5.26等版本的预构建Lambda层
  • 预构建Lambda层:包含运行时环境和Paws SDK层,支持直接引用ARN快速部署
  • 本地Docker测试:提供构建和运行镜像,支持本地安装依赖及事件触发测试
  • **AWS *集成:预装AWS::***模块,支持请求追踪和性能分析
  • Paws SDK支持:提供预构建Paws层,简化AWS服务API调用
  • 自定义模块层:支持创建包含自定义Perl模块的Lambda层

使用场景和适用范围

适用于需要在AWS Lambda中运行Perl代码的开发者,特别是:

  • 开发Perl微服务并部署到AWS Lambda
  • 需要调用AWS服务API(如S3、DynamoDB)的Lambda函数
  • 需对Lambda请求进行分布式追踪和性能分析
  • 希望在本地模拟Lambda环境进行开发调试

详细使用方法和配置说明

快速入门示例

  1. 创建Perl处理函数handler.pl:

    sub handle {
        my ($payload, $context) = @_;
        return $payload;
    }
    
  2. 打包代码:

    zip handler.zip handler.pl
    
  3. 使用AWS CLI创建Lambda函数:

    aws --region "$REGION" --profile "$PROFILE" lambda create-function \
        --function-name "hello-perl" \
        --zip-file "fileb://handler.zip" \
        --handler "handler.handle" \
        --runtime provided.al2 \
        --role arn:aws:iam::xxxxxxxxxxxx:role/service-role/lambda-custom-runtime-perl-role \
        --layers "arn:aws:lambda:$REGION:445285296882:layer:perl-5-32-runtime-al2:1"
    

使用预构建公共Lambda层

控制台部署步骤

  1. 登录AWS账户,进入Lambda控制台
  2. 创建新函数,指定名称和IAM角色
  3. 运行时选择Amazon Linux 2上提供自己的引导程序(provided.al2)
  4. 在函数设计器中选择Layers,点击添加层
  5. 选择提供层版本ARN,粘贴对应区域的层ARN
  6. 点击添加并保存,上传代码即可使用

获取层ARN

通过代码获取:

use AWS::Lambda;
my $info = AWS::Lambda::get_layer_info_al2(
    "5.32",      # Perl版本
    "us-east-1", # 区域
);
say $info->{runtime_arn};     # 运行时层ARN
say $info->{paws_arn};         # Paws SDK层ARN

通过命令行获取:

# 获取运行时层ARN
perl -MAWS::Lambda -e 'AWS::Lambda::print_runtime_arn_al2("5.32", "us-east-1")'

# 获取Paws层ARN
perl -MAWS::Lambda -e 'AWS::Lambda::print_paws_arn_al2("5.32", "us-east-1")'

Perl 5.32运行时层ARN列表(Amazon Linux 2)

  • arn:aws:lambda:af-south-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:ap-east-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:ap-northeast-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:ap-northeast-2:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:ap-south-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:ap-southeast-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:ap-southeast-2:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:ca-central-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:eu-central-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:eu-south-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:eu-west-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:eu-west-2:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:eu-west-3:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:me-south-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:sa-east-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:us-east-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:us-east-2:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:us-west-1:445285296882:layer:perl-5-32-runtime-al2:1
  • arn:aws:lambda:us-west-2:445285296882:layer:perl-5-32-runtime-al2:1

本地使用Docker运行

安装依赖

docker run --rm -v $(PWD):/var/task shogo82148/p5-aws-lambda:build-5.32.al2 \
    cpanm --notest --local-lib extlocal --no-man-pages --installdeps .

触发事件测试

docker run --rm -v $(PWD):/var/task shogo82148/p5-aws-lambda:5.32.al2 \
    handler.handle '{"some":"event"}'

AWS ***支持

通过AWS::***模块实现请求追踪:

use utf8;
use warnings;
use strict;
use AWS::*** qw/ capture /;

sub handle {
    my ($payload, $context) = @_;
    capture "myApp" => sub {
        capture "nested" => sub {
            # 业务逻辑...
        };
    };
    capture "another" => sub {
        # 业务逻辑...
    };
    return;
}

1;

Paws SDK支持

Paws是Perl的AWS SDK,可通过预构建层快速集成。

使用Paws层创建函数

aws --region "$REGION" --profile "$PROFILE" lambda create-function \
    --function-name "hello-perl-paws" \
    --zip-file "fileb://handler.zip" \
    --handler "handler.handle" \
    --runtime provided.al2 \
    --role arn:aws:iam::xxxxxxxxxxxx:role/service-role/lambda-custom-runtime-perl-role \
    --layers \
        "arn:aws:lambda:$REGION:445285296882:layer:perl-5-32-runtime-al2:1" \
        "arn:aws:lambda:$REGION:445285296882:layer:perl-5-32-paws-al2:1"

Paws代码示例

use Paws;
my $s3 = Paws->service('S3');
my $buckets = $s3->ListBuckets();
return { buckets => [map { $_->Name } @{$buckets->Buckets}] };

本地Paws开发

# 安装依赖
docker run --rm -v $(PWD):/var/task shogo82148/p5-aws-lambda:build-5.32-paws.al2 \
    cpanm --notest --local-lib extlocal --no-man-pages --installdeps .

# 运行测试
docker run --rm -v $(PWD):/var/task shogo82148/p5-aws-lambda:5.32-paws.al2 \
    handler.handle '{"some":"event"}'

创建自定义模块层

将自定义Perl模块打包为Lambda层:

# 创建Some::Module层
docker run --rm \
    -v $(PWD):/var/task \
    -v $(PATH_TO_LAYER_DIR)/lib/perl5/site_perl:/opt/lib/perl5/site_perl \
    shogo82148/p5-aws-lambda:build-5.32.al2 \
    cpanm --notest --no-man-pages Some::Module

# 打包层
cd $(PATH_TO_LAYER_DIR) && zip -9 -r $(PATH_TO_DIST)/some-module.zip .

遗留自定义运行时(Amazon Linux)

提供基于旧版Amazon Linux(runtime=provided)的层,支持Perl 5.32/5.30/5.28/5.26,层ARN格式:

  • 运行时层:arn:aws:lambda:$REGION:445285296882:layer:perl-$VERSION-runtime:$VERSION
  • Paws层:arn:aws:lambda:$REGION:445285296882:layer:perl-$VERSION-paws:$VERSION

参见

  • AWS::Lambda::Bootstrap
  • AWS::Lambda::Context
  • AWS::Lambda::PSGI
  • Paws
  • AWS::***

许可证

MIT许可证(MIT)

版权所有 (C) Ichinose Shogo。

作者

Ichinose Shogo <***>

查看更多 p5-aws-lambda 相关镜像 →
amazon/aws-lambda-java logo
amazon/aws-lambda-java
by Amazon Web Services
认证
AWS Lambda Java基础镜像,用于构建和部署Java开发的Lambda函数,提供官方支持的运行环境以确保Java Lambda应用的兼容性与稳定运行。
151M+ pulls
上次更新:12 小时前
amazon/aws-lambda-nodejs logo
amazon/aws-lambda-nodejs
by Amazon Web Services
认证
适用于NodeJS的AWS Lambda基础镜像
535M+ pulls
上次更新:13 小时前
amazon/aws-lambda-python logo
amazon/aws-lambda-python
by Amazon Web Services
认证
AWS提供的Lambda基础镜像,包含Amazon Linux系统、运行时、依赖及Lambda Runtime Interface Client,用于将函数打包为容器镜像并在AWS Lambda上运行。
1051M+ pulls
上次更新:12 小时前
amazon/aws-lambda-go logo
amazon/aws-lambda-go
by Amazon Web Services
认证
AWS Lambda Go语言基础镜像,包含运行函数所需的Amazon Linux系统、Go运行时环境及Lambda Runtime Interface Client,用于将Go函数打包为容器镜像并在AWS Lambda运行,支持本地开发测试与云环境部署。
15100K+ pulls
上次更新:1 年前
amazon/aws-lambda-dotnet logo
amazon/aws-lambda-dotnet
by Amazon Web Services
认证
AWS Lambda的.NET基础镜像,用于构建和运行.NET应用的无服务器部署环境。
19500K+ pulls
上次更新:12 小时前

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像免费版与专业版有分别支持哪些镜像?

免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.