A simple image viewer using AWS Lambda + CloudFront + DynamoDB + S3.
- No ALB or API Gateway. The viewer uses Lambda Function URLs.
- The viewer shows some EXIFs from DynamoDB.
- S3-event-driven Tagger gets EXIF by a photo and puts to DynamoDB.
- CloudFront delivery.
- Serverless Framework v3.34
- Terraform v1.5.0
- Go 1.21
- AWS
You can also use **env to install easily.
git clone https://github.com/tsubasaogawa/lambda-image-viewer.git
cd lambda-image-viewer
cp -p src/viewer/.env.tmpl src/viewer/.env
vim src/viewer/.env
cp -p terraform/terraform.tfvars.tmpl terraform/terraform.tfvars
vim terraform/terraform.tfvars
cd src/viewer
serverless deploy
# Building go binary, deploying lambda using serverless
cd ../../terraform
terraform init
terraform apply
aws s3 cp <PHOTO FILE> s3://<CREATED S3 BUCKET>/<FILE NAME>
- Fix design