はじめに
Ubuntu環境です。
ローカルマシンに Runtime Interface Emulator をインストール
Lambda環境をローカルで再現してくれます。
mkdir -p ~/.aws-lambda-rie && curl -Lo ~/.aws-lambda-rie/aws-lambda-rie \
https://github.com/aws/aws-lambda-runtime-interface-emulator/releases/latest/download/aws-lambda-rie \
&& chmod +x ~/.aws-lambda-rie/aws-lambda-rie
コンテナの実行
IMAGE_URL=XXXXXXXXXXXXXXXXXXXX
IMAGE_HANDLER=app.handler # Lambda関数のコード内のハンドラー関数に応じて変更 DockerfileのCMDに指定したものと同じ
IMAGE_ENDPOINT=XXXXXXXXXXXXXXXXXXXX # Lambda関数のコード内のエンドポイントに応じて変更 DockerfileのENTRYPOINTに指定したものと同じ
docker run -d -v ~/.aws-lambda-rie:/aws-lambda -p 9000:8080 \
--entrypoint /aws-lambda/aws-lambda-rie \
${IMAGE_URL} \
${IMAGE_ENDPOINT} \
${IMAGE_HANDLER}
参考