Skip to main content

Container Registry Comparison: ECR vs GCR vs Docker Hub vs GHCR

Choose the right container registry for your team. Compare AWS ECR, Google Artifact Registry (GCR), Docker Hub, GitHub Container Registry (GHCR), and Azure ACR on pricing, access control, vulnerability scanning, and geographic replication.

โœ“ 5 registries compared โœ“ Pricing breakdown โœ“ Vulnerability scanning โœ“ Access control models
Share this tool: X / Twitter LinkedIn
โœ“ 60,000+ developers use DevPlaybook โ˜…โ˜…โ˜…โ˜…โ˜… 4.8 / 5 on Gumroad โœ“ MIT licensed ยท Instant download โœ“ No login required

Related Products

on Gumroad

You Might Also Need

More Free Tools

Related Articles

Apr 4, 2026 ยท 12 ๅˆ†้˜

curl ๆทฑๅบฆไฝฟ็”จๆ‰‹ๅ†Š๏ผšAPI ๆธฌ่ฉฆๅพžๅ…ฅ้–€ๅˆฐ้€ฒ้šŽ

curl ๆ˜ฏๆฏไฝ้–‹็™ผ่€…ๅฟ…ๅ‚™็š„ CLI ๅทฅๅ…ทใ€‚ๆœฌๆ–‡ๆถต่“‹ GET/POST/PUT/DELETE ่ซ‹ๆฑ‚ใ€่ช่ญ‰ใ€header ่จญๅฎšใ€ๆช”ๆกˆไธŠๅ‚ณใ€้™ค้ŒฏๆŠ€ๅทง๏ผŒไปฅๅŠ REST API ๆธฌ่ฉฆ็š„ๅฎŒๆ•ดๅฏฆๆˆฐ็ฏ„ไพ‹ใ€‚

Apr 2, 2026 ยท 8 min read

Best AI Code Review Tools 2026: CodeRabbit, Sourcery, DeepCode & Bito Compared

Compare top AI code review tools for 2026: CodeRabbit, Sourcery, DeepCode, and Bito. Features, pricing, GitHub/GitLab integration, and choosing the right tool for your team.

Apr 2, 2026 ยท 10 min read

AI Code Review Tools 2026: GitHub Copilot, CodeRabbit, Qodo Merge Ranked

Compare AI code review tools for 2026: GitHub Copilot code review, CodeRabbit, Qodo Merge, Sourcery, and PR-Agent. Pricing, accuracy, and GitHub integration.

Apr 2, 2026 ยท 13 min read

AI Coding Tools Comparison 2026: GitHub Copilot vs Cursor vs Windsurf vs Cline

Comprehensive comparison of the best AI coding tools in 2026: GitHub Copilot, Cursor, Windsurf, and Cline. Pricing, features, model support, and real-world benchmarks.

Apr 2, 2026 ยท 11 min read

AI Pair Programming in 2026: GitHub Copilot vs Cursor vs Claude Code

Master AI pair programming in 2026. Compare GitHub Copilot, Cursor, and Claude Code for autocomplete, chat, and agentic workflows. Includes setup guides and productivity tips.

Enjoying this tool? Get more like it.

Weekly developer tool guides, productivity playbooks & AI tricks. Free. No spam.

DevPlaybook Pro 7 days free

Unlock AI-Powered Dev Tools

  • โšก AI Code Review, Doc Generator & SQL Builder
  • โšก All premium templates & early access
  • โšก Member discounts on Gumroad products
Start Free Trial โ†’

$9/mo after trial ยท Cancel anytime

Want the full toolkit?

Get DevPlaybook Pro

Every template, guide, boilerplate, and automation script in one bundle. 13 premium products โ€” grab them all at once and save big.

$79
$241 separately Save $162 (67% off)
Get DevPlaybook Pro โ€” $79 โ†’

MIT licensed ยท Instant download ยท No subscription

See what's included โ†’ Browse all deals โ†’

What Is a Container Registry?

A container registry stores and distributes OCI-compliant container images. Your CI/CD pipeline builds an image, tags it (e.g., myapp:v1.2.3), and pushes it to the registry. When Kubernetes or ECS deploys the app, it pulls the image from the registry.

Key capabilities to evaluate:

  • Authentication โ€” How does your cluster authenticate to pull images?
  • Access control โ€” Can you limit who can push vs pull, per repository?
  • Vulnerability scanning โ€” Does it scan images on push?
  • Rate limits โ€” Will pulls get throttled under load?
  • Geographic availability โ€” Can images be replicated close to your clusters?
  • Pricing โ€” Storage and egress costs at scale.

Feature Comparison Table

Feature ECR (AWS) Artifact Registry (GCP) Docker Hub GHCR ACR (Azure)
Auth methodIAM (token, 12h TTL)Service Account / WIUsername + PATGITHUB_TOKEN / PATService Principal / MI
Free private reposUnlimited (storage cost)0.5 GB/month free1 (free tier)Included in GH planGeo + tier dependent
Pull rate limitsNone (within AWS)None200/6h (free)NoneNone
Vulnerability scanningBasic + InspectorContainer AnalysisPaid plansDependabot alertsDefender for Containers
Geo replicationCross-region rulesMulti-region reposCDN (public images)LimitedPremium tier
OCI artifactsYesYes (multi-format)LimitedYesYes
Best forAWS workloadsGCP / multi-formatPublic OSS imagesGitHub CI/CD teamsAzure workloads

Authenticating to Each Registry

AWS ECR โ€” IAM-Based Auth

ECR uses short-lived tokens generated via aws ecr get-login-password. Tokens expire after 12 hours, so static imagePullSecrets break overnight. For EKS, use the ECR credential provider plugin โ€” it refreshes tokens automatically at the node level.

# Login to ECR
aws ecr get-login-password --region us-east-1 \
  | docker login --username AWS \
    --password-stdin 123456789.dkr.ecr.us-east-1.amazonaws.com

# Push image
docker tag myapp:latest 123456789.dkr.ecr.us-east-1.amazonaws.com/myapp:latest
docker push 123456789.dkr.ecr.us-east-1.amazonaws.com/myapp:latest

GitHub GHCR โ€” GITHUB_TOKEN

GHCR integrates with GitHub Actions natively. Use GITHUB_TOKEN for same-repository images โ€” no PAT needed. For cross-repository pulls, create a PAT with read:packages scope.

# GitHub Actions workflow
- name: Log in to GHCR
  uses: docker/login-action@v3
  with:
    registry: ghcr.io
    username: {{ github.actor }}
    password: {{ secrets.GITHUB_TOKEN }}

- name: Build and push
  uses: docker/build-push-action@v5
  with:
    push: true
    tags: ghcr.io/{{ github.repository }}:latest

GCP Artifact Registry โ€” Workload Identity

For GKE, use Workload Identity Federation to bind a Kubernetes Service Account to a GCP Service Account โ€” no credentials in Kubernetes Secrets. For local dev, use gcloud auth configure-docker.

# Configure docker to use gcloud credentials
gcloud auth configure-docker us-central1-docker.pkg.dev

# Push to Artifact Registry
docker tag myapp:latest us-central1-docker.pkg.dev/my-project/my-repo/myapp:latest
docker push us-central1-docker.pkg.dev/my-project/my-repo/myapp:latest

Pricing Comparison (2026)

Registry Storage Egress (same region) Egress (cross-region) Free Tier
ECR$0.10/GB/monthFree$0.09/GB500MB/month (12mo)
Artifact Registry$0.10/GB/monthFreeVaries by region0.5 GB storage
Docker Hub$0 (public) / plan-basedFreeFree1 private repo
GHCR$0 (public) / GH planFreeFreeGH Free: 500MB/1GB egress
ACR Basic$0.003/GB/dayFree (Azure VNet)Standard Azure egress$0.167/day (Basic tier)

Note: ECR egress is free when pulling from EC2/ECS/EKS in the same AWS region. Cross-region or internet egress costs apply.

Choosing the Right Registry

AWS-first teams โ†’ ECR

Zero egress costs within AWS, native IAM integration, no rate limits. Use the ECR credential provider for EKS to avoid token expiry issues.

GitHub Actions CI/CD โ†’ GHCR

Native GITHUB_TOKEN auth, no extra accounts, free for public repos, private included in GitHub plans. Best DX for GitHub-centric teams.

GCP teams โ†’ Artifact Registry

Multi-format (Docker, Helm, npm, Maven), Workload Identity for zero-credentials auth on GKE, Container Analysis for scanning.

Public OSS projects โ†’ Docker Hub

Still the default for public images. Official images, automated builds, massive ecosystem. Rate limits only affect anonymous pulls.