3

我创建了一个“hellogo”lambda,并尝试使用在本地运行它

sam package sam deploy sam local start-api 访问:http://localhost:3000/hellogo

docker 在首选项中共享 hellogo 文件夹。

访问时,我从 docker 看到以下错误,我需要做什么来解决这个问题?

Fetching lambci/lambda:go1.x Docker container image......
2019-01-12 21:53:42 Mounting /Volumes/data/temp/aws-lambda-go-hello as /var/task:ro inside runtime container
START RequestId: 20099bdb-175d-10b0-c6dd-8acecddd82cd Version: $LATEST
END RequestId: 20099bdb-175d-10b0-c6dd-8acecddd82cd
REPORT RequestId: 20099bdb-175d-10b0-c6dd-8acecddd82cd  Duration: 1.26 ms   Billed Duration: 100 ms Memory Size: 128 MB Max Memory Used: 6 MB   
{
  "errorMessage": "fork/exec /var/task/main: no such file or directory",
  "errorType": "PathError"
}
2019-01-12 21:53:43 Function returned an invalid response (must include one of: body, headers or statusCode in the response object). Response received: 
2019-01-12 21:53:43 127.0.0.1 - - [12/Jan/2019 21:53:43] "GET /hellogo HTTP/1.1" 502 -
2019-01-12 21:53:43 127.0.0.1 - - [12/Jan/2019 21:53:43] "GET /favicon.ico HTTP/1.1" 403 -

在此处输入图像描述

更多细节:

山姆包

ML02:aws-lambda-go-hello pro$  **sam package** --template-file template.yaml --output-template-file packaged.yaml --s3-bucket prembucket01
Uploading to 60c9406899556856b732b3b1d556f0c2  1608 / 1608.0  (100.00%)
Successfully packaged artifacts and wrote output template to file packaged.yaml.

山姆部署

ML02:aws-lambda-go-hello pro$  sam deploy --template-file packaged.yaml --stack-name aws-serverless-application --capabilities CAPABILITY_IAM

Waiting for changeset to be created..
Waiting for stack create/update to complete
Successfully created/updated stack - aws-serverless-application

山姆本地启动-api

ML02:aws-lambda-go-hello pro$ sam local start-api
2019-01-12 21:51:10 Found credentials in shared credentials file: ~/.aws/credentials
2019-01-12 21:51:11 Mounting helloworld at http://127.0.0.1:3000/hellogo [GET]
2019-01-12 21:51:11 You can now browse to the above endpoints to invoke your functions. You do not need to restart/reload SAM CLI while working on your functions changes will be reflected instantly/automatically. You only need to restart SAM CLI if you update your AWS SAM template
2019-01-12 21:51:11  * Running on http://127.0.0.1:3000/ (Press CTRL+C to quit)

在 aws 中部署时我看到同样的错误 在此处输入图像描述

4

1 回答 1

0

有一些相关的问题,比如

使用 Go 和 Cloudformation 部署 AWS Lambda

https://github.com/serverless/serverless/issues/4710

尝试制作一个像这样的处理程序

func main() {
    lambda.Start(helloGoHandler)
}
于 2019-07-03T07:58:24.260 回答