Pick a depth. Each prompt opens in your AI pre-loaded with the lesson. Click a row to preview the prompt.
A registry is just a content-addressable store with an HTTP API; Docker Hub is the default, but every cloud has its own — ECR on AWS, ACR on Azure, GCR/Artifact Registry on GCP, DOCR on DigitalOcean. The choice matters because Docker Hub now rate-limits anonymous pulls (100 per 6 hours per IP), which will brick your CI the moment you scale. Knowing how to authenticate, tag, and push to a private registry is the single biggest lever for a stable build pipeline.
Push the same image to Docker Hub, AWS ECR, GCP Artifact Registry, and DigitalOcean Container Registry to see the auth and naming differences.
demo:v1 image to two different registries and run docker images to confirm both tags point at the same image ID (same content, different names).docker login — note the ratelimit-remaining header difference.ecr:BatchGetImage but denies ecr:PutImage, then verify a push fails with denied while a pull still works.# AWS Elastic Container Registry (ECR):
aws ecr create-repository --repository-name demo --region us-east-1
ACCOUNT=$(aws sts get-caller-identity --query Account --output text)
REGISTRY=$ACCOUNT.dkr.ecr.us-east-1.amazonaws.com
aws ecr get-login-password --region us-east-1 \
| docker login --username AWS --password-stdin $REGISTRY
docker tag demo:v1 $REGISTRY/demo:v1
docker push $REGISTRY/demo:v1
# Pull from another machine:
aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin $REGISTRY
docker pull $REGISTRY/demo:v1