# Build Docker Image Requirements: * sam, aws-cli, docker ## Docker Container Push a docker image to the ECR repository. ```sh export AWS_REGION=us-west-1 export AWS_PROFILE=playground aws configure sso --profile $AWS_PROFILE export REPOSITORY_URI=$(aws ecr describe-repositories --repository-names hello-world --region $AWS_REGION --profile $AWS_PROFILE | jq -r '.repositories[0].repositoryUri') aws ecr get-login-password --region $AWS_REGION --profile $AWS_PROFILE | docker login --username AWS --password-stdin $REPOSITORY_URI ``` Build the docker image and push it to the ECR repository. ```sh docker build -t hello-world . docker tag hello-world:latest $REPOSITORY_URI:latest docker push $REPOSITORY_URI:latest ``` ### Testing Test the container image locally. ```sh docker run -p 8000:8000 hello-world:latest ``` Check it in another terminal tab. ```sh curl http://localhost:8000 docker stop $(docker ps -q) ``` Cleanup the repo. ```sh aws ecr delete-repository --repository-name hello-world --region $AWS_REGION --profile $AWS_PROFILE --force ``` ## Resources * [deno lambda guide](https://docs.deno.com/runtime/tutorials/aws_lambda/) * (Deprecated) Deno on AWS Lambda: [Manual lambda packaging guide](https://github.com/denoland/deno-lambda/tree/f735a1a4f0a4a57a348f8af88d6cf30ddc0a5f2e)