AWS provides a set of open-source base images that you can use. You can also use a preferred community or private base image. Lambda provides client software that you add to your preferred base image to make it compatible with the Lambda service.
Note
Each base image is compatible with one or more of the instruction set architectures that Lambda supports. You need to build the function image for only one architcture. Lambda does not support multi-architecture images.
Topics
- AWS base images for Lambda
- Base images for custom runtimes
- Runtime interface clients
- Runtime interface emulator
You can use one of the AWS base images for Lambda to build the container image for your function code. The base images are preloaded with a language runtime and other components required to run a container image on Lambda. You add your function code and dependencies to the base image and then package it as a container image.
AWS will maintain and regularly update these images. In addition, AWS will release AWS base images when any new managed runtime becomes available.
Lambda provides base images for the following runtimes:
AWS provides base images that contain the required Lambda components and the Amazon Linux or Amazon Linux2 operating system. You can add your preferred runtime, dependencies and code to these images.
Tags | Runtime | Operating system |
---|---|---|
al2 | provided.al2 | Amazon Linux 2 |
alami | provided | Amazon Linux |
DockerHub: amazon/aws-lambda-provided
ECR Public: public.ecr.aws/lambda/provided
The runtime interface client in your container image manages the interaction between Lambda and your function code. The Runtime API, along with the Extensions API, defines a simple HTTP interface for runtimes to receive invocation events from Lambda and respond with success or failure indications.
Each of the AWS base images for Lambda include a runtime interface client. If you choose one of the base images for custom runtimes or an alternative base image, you need to add the appropriate runtime interface client.
For your convenience, Lambda provides an open source runtime interface client for each of the supported Lambda runtimes:
Lambda provides a runtime interface emulator (RIE) for you to test your function locally. The AWS base images for Lambda and base images for custom runtimes include the RIE. For other base images, you can download the Runtime interface emulator from the AWS GitHub repository.