はじめに
ファイルの中身のみ記載します。
ディレクトリ構造
. ├── docker-compose.yml ├── lambda ├── sample └── index.js
docker-compose.ymlの内容
version: '3' services: addData: container_name: sample-lambda image: lambci/lambda:nodejs12.x volumes: - ./lambda/sample:/var/task ports: - 9001:9001 environment: AWS_DEFAULT_REGION: XXXXXXXX AWS_ACCOUNT_ID: YYYYYYYY DOCKER_LAMBDA_WATCH: 1 DOCKER_LAMBDA_STAY_OPEN: 1 command: index.handler
index.jsの内容
const aws = require("aws-sdk"); exports.handler = async (event, context) => { context.succeed({ statusCode: 200, body : JSON.stringify('hallo sample!'), }); };
いざ実行!
dockerの起動
docker-compose up
レスポンス確認
別タブで実行
curl -d '{}' http://localhost:9001/2015-03-31/functions/sample/invocations
レスポンス
{"statusCode":200,"body":"\"hallo sample!\""}
終わりに
デプロイなんかもDocker使ってできるみたいですね。
時間があれば、そちらも記載したいと思います:relaxed:
コメント