Skip to content

Instantly share code, notes, and snippets.

@eluttner
Forked from miguelmota/Makefile
Created August 9, 2019 10:57
Show Gist options
  • Save eluttner/a1ac7e7f750805a19fa7046aa50f2692 to your computer and use it in GitHub Desktop.
Save eluttner/a1ac7e7f750805a19fa7046aa50f2692 to your computer and use it in GitHub Desktop.
Makefile docker push to AWS Elastic Container Registry (ECR)
# Login to AWS registry (must have docker running)
docker/registry/login:
$$(aws ecr get-login --no-include-email --region us-east-1 --profile=mycompany)
# Build docker target
docker/build:
docker build -f Dockerfile --no-cache -t mycompany/myapp .
# Tag docker image
docker/image/tag:
$(eval REV=$(shell git rev-parse HEAD | cut -c1-7))
docker tag mycompany/myapp:latest 123.dkr.ecr.us-east-1.amazonaws.com/mycompany/myapp:latest
docker tag mycompany/myapp:latest 123.dkr.ecr.us-east-1.amazonaws.com/mycompany/myapp:$(REV)
# Push to registry
docker/registry/push:
$(eval REV=$(shell git rev-parse HEAD | cut -c1-7))
docker push 123.dkr.ecr.us-east-1.amazonaws.com/mycompany/myapp:latest
docker push 123.dkr.ecr.us-east-1.amazonaws.com/mycompany/myapp:$(REV)
# Build docker image and push to AWS registry
docker/build-and-push: docker/registry/login docker/build docker/image/tag docker/registry/push 
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment