AWS Lambda for Go

2022-6-23 19:12:58 Author:查看原文) 阅读量:11 收藏

Libraries, samples, and tools to help Go developers develop AWS Lambda functions.

To learn more about writing AWS Lambda functions in Go, go to the official documentation

Getting Started

// main.go
package main

import (

func hello() (string, error) {
	return "Hello λ!", nil

func main() {
	// Make the handler available for Remote Procedure Call by AWS Lambda

Building your function

Preparing a binary to deploy to AWS Lambda requires that it is compiled for Linux and placed into a .zip file.

For developers on Linux and macOS

# Remember to build your handler executable for Linux!
GOOS=linux GOARCH=amd64 go build -o main main.go
zip main

For developers on Windows

Windows developers may have trouble producing a zip file that marks the binary as executable on Linux. To create a .zip that will work on AWS Lambda, the build-lambda-zip the tool may be helpful.

Get the tool

set GO111MODULE=on
go.exe get -u

Use the tool from your GOPATH. If you have a default installation of Go, the tool will be in %USERPROFILE%\Go\bin.

in cmd.exe:

set GOOS=linux
set GOARCH=amd64
go build -o main main.go
%USERPROFILE%\Go\bin\build-lambda-zip.exe -o main

in Powershell: