Search code examples
aws-lambda

How do I set up a lambda function in AWS to install certain packages and dependencies


I know there are deployment packages but what are these? Can they contain bash scripts that do apt-get install?

Is there any way to build a lambda function that uses a particular AMI


Solution

  • This is not not supported via the provided docker Lambda images for example public.ecr.aws/lambda/python:3.8.

    You can run shell commands from inside your code(so technically you could run shell scripts) but you are charged for the time it takes your Lambda to execute - so installing a bunch of dependencies every time the Lambda starts up would be considered an anti-pattern.

    You need to bundle all the packages and dependencies with your Lambda. This is done by uploading a zip file that contains the lambda function and all the dependencies.

    You can see the official docs for the various supported languages here:

    http://docs.aws.amazon.com/lambda/latest/dg/nodejs-create-deployment-pkg.html

    http://docs.aws.amazon.com/lambda/latest/dg/lambda-java-how-to-create-deployment-package.html

    http://docs.aws.amazon.com/lambda/latest/dg/lambda-python-how-to-create-deployment-package.html