TopDev

Container Registries là gì? Cùng nhau tìm hiểu nhé

minhu 📖 2 phút đọc

🧱 Container Registry là gì?#

Container Registry là nơi để lưu trữ và phân phối các container image.

Ví dụ dễ hiểu:#

  • Bạn viết ứng dụng và đóng gói nó thành 1 Docker image (kiểu như “bản sao” của app).

  • Bạn push image đó lên Container Registry.

  • Sau đó, bất kỳ nơi nào (server, Kubernetes, CI/CD pipeline...) có thể pull image từ registry về để chạy.



🔁 Quá trình hoạt động:#

  • 🛠 Build → Tạo Docker image: docker build -t myapp:1.0 .

  • 📤 Push → Đẩy image lên registry: docker tag myapp:1.0 registry.example.com/myapp:1.0 docker push registry.example.com/myapp:1.0

  • 📥 Pull → Tải image từ registry để deploy ở nơi khác: docker pull registry.example.com/myapp:1.0



💡 Một số Container Registry phổ biến:#

Tên Registry Đặc điểm chính
Docker Hub Phổ biến nhất, miễn phí có giới hạn, có cả public & private
GitHub Container Registry (GHCR) Tích hợp GitHub Actions tốt
Google Container Registry (GCR) Tích hợp GCP tốt
Amazon ECR Cho AWS
Harbor Tự host riêng, phù hợp công ty
Vultr Container Registry Nếu bạn dùng server/container ở Vultr thì tích hợp sẵn


🚀 Làm sao để triển khai Container Registry?#

✅ Cách 1: Dùng registry có sẵn (khuyên dùng)#

Ví dụ với Docker Hub:

  • Đăng ký tài khoản tại https://hub.docker.com

  • Build và tag image: docker build -t yourusername/myapp:1.0 .

  • Login và push: docker login docker push yourusername/myapp:1.0

✅ Cách 2: Tự triển khai private registry (ví dụ trên server riêng)#

`

Chạy một registry private trên local/server

docker run -d -p 5000:5000 --name registry registry:2 `

Sau đó bạn có thể push image về:

docker tag myapp localhost:5000/myapp docker push localhost:5000/myapp

🎯 Phù hợp cho nội bộ, không muốn dùng registry công cộng.



🔒 Lưu ý bảo mật:#

  • Nếu dùng private registry → nên có HTTPS.

  • Đặt quyền truy cập, kiểm soát user, nếu dùng Harbor, Docker Hub Pro, v.v.



✍️ Tổng kết:#

Tóm tắt Nội dung
Container Registry là gì? Kho chứa Docker image
Tại sao cần? Để deploy ứng dụng dễ dàng, nhanh chóng, nhất quán
Cách triển khai? Dùng dịch vụ sẵn có (Docker Hub, GHCR...) hoặc tự host (Harbor, registry:2)


Nếu bạn đang triển khai app thực tế và muốn đẩy image lên Docker Hub hoặc GHCR, mình có thể hướng dẫn chi tiết từng bước. Bạn muốn thử kiểu nào: registry sẵn có hay tự cài private registry?

Bài liên quan trong #Tin tức

✓ Đã sao chép link