1

我尝试通过克隆完整示例并将其部署到 AWS Lambda 中引导“Micronaut Function as GraalVM Native Image”示例(此处为文本指南)。每次调用 lambda 都会失败并出现相同的错误(来自 CloudWatch Logs):

Error: fork/exec /var/task/bootstrap: no such file or directory Runtime.InvalidEntrypoint

我检查了一个 ZIP 存档,其中包含通过执行生成的代码./deploy.sh(作为函数代码上传到 Lambda 函数),并且bootstrap文件位于 ZIP 文件中。

重现步骤

我没有任何特别的说明,我只是简单地举了一个完整的例子,按照有关构建本机映像的说明,然后部署一个构建的 ZIP 文件。

我想知道是否可以使用 GraalVM 原生映像部署 Micronaut Serverless 功能,或者该功能是否已损坏。我尝试使用 GraalVM Native Image 部署 Micronaut 应用程序(遵循本指南),它对我来说效果很好。

提前感谢您的帮助。

4

1 回答 1

0

这实际上工作正常。我自己也遇到了同样的问题,结果是当我使用 Windows 时,我有 git 选项来“签出 Windows 样式,提交 Unix 样式”(请参阅​​如何更改行尾设置),这最终改变了我的项目中的引导文件的行结尾,然后将其复制到上传到 AWS 的 zip 文件中,即使看起来相同,AWS 也无法运行它。

如果这是问题,那么您可以使用 linux 命令修复它: dos2unix bootstrap在您的引导文件上,然后重建本机映像。

于 2020-11-20T09:54:23.400 回答