使用AWS re:Post即您表示您同意 AWS re:Post 使用条款

我如何解决来自 Docker 映像的 Lambda 函数的“Runtime.InvalidEntrypoint”错误?

1 分钟阅读
0

我在尝试从 Docker 映像创建 AWS Lambda 函数时收到了“Runtime.InvalidEntrypoint”错误。

解决方法

当 Lambda 函数配置中的条目不正确时,您会收到 Runtime.InvalidEntrypoint 错误。

要解决此问题,请检查 Lambda 函数配置的以下设置:

  • 验证容器映像的 ENTRYPOINT 和 CMD 是否使用绝对路径作为位置。此外,映像不能将符号链接作为 ENTRYPOINT。

  • 确保 Lambda 函数配置中的 ENTRYPOINT 正确无误。ENTRYPOINT 必须与容器的 Dockerfile 中用于运行时的命令匹配。

  • 验证容器映像是否已被推送到正确的 Amazon Elastic Container Registry (Amazon ECR)。

  • 确保 Docker 映像的架构和 Lambda 函数相同。Lambda 支持 arm64 和 x86_64 指令集架构。当您构建容器映像时,务必使用 linux/amd64linux/arm64 平台。
    示例:

    docker build platform linux/amd64 -t docker-image:test
  • 当 Lambda 部署包没有正确的安全权限时,您会收到权限被拒绝错误以及 Runtime.InvalidEntrypoint 错误。要验证权限是否正确,请参见维基百科网站上的 Unix 权限符号表示法。对于 Lambda 部署包中的所有文件,正确的权限设置均为 644。对于部署包中的文件夹,正确的权限设置为 755。有关更多信息,请参阅我如何排查上传 Lambda 部署包时出现的“权限被拒绝”或“unable to import module”错误?

相关信息

如何使用带有 Docker 的模拟 Lambda 环境创建 Lambda 层?

排查 Lambda 中的容器映像问题

如何在 Lambda 中使用容器映像?

AWS 官方
AWS 官方已更新 7 个月前