Amazon Elastic Container Registry
Kho image container
Kho lưu Docker/OCI image riêng tư, có quét lỗ hổng, để ECS/EKS/Lambda kéo về chạy.
- Chi phí$ Rẻ
- Độ khó●●●●●
- Để không có tốn tiền?Ít
- AWS quản lý
- Có trong đềSAA · DVA
Hình dungNhư kho khuôn mẫu: muốn đúc sản phẩm (container) thì lấy khuôn (image) từ đây.
ECR đứng ở đâu trong hệ thống?
Gọi tới ECR
Một ví dụ thật, từng bước
- Nhóm của bạn build Docker image của API mỗi lần có code mới.
- Pipeline CI đăng nhập vào ECR bằng quyền IAM và đẩy image lên repository riêng của công ty.
- ECR tự quét lỗ hổng bảo mật khi image vừa được đẩy lên và báo nếu có thư viện nguy hiểm.
- ECS hoặc EKS kéo image từ ECR trong cùng region, nhanh và không đi qua Internet.
- Lifecycle policy tự xoá image cũ hơn 30 bản gần nhất để tiền lưu trữ không phình mãi.
Khi nào nên dùng
✓ Nên dùng khi
Lưu image cho ứng dụng chạy trên AWS.
Ví dụ hay gặp
- Lưu image cho ECS, EKS, Lambda
- Quét lỗ hổng bảo mật trong image
- Sao chép image sang tài khoản hoặc Region khác
ECR, S3 hay ECS?
Tốn bao nhiêu tiền?
- Cách tính: ~$0,10/GB-tháng lưu trữ + phí truyền dữ liệu ra ngoài Region hoặc Internet. Kéo image trong cùng Region không tính phí truyền dữ liệu.
- Miễn phí: Không đáng kể.
Không đặt lifecycle policy nên image cũ tích tụ mãi; kéo image qua NAT Gateway thay vì VPC endpoint.
Container trên ECS không kéo được image từ ECR thường là do thiếu quyền ở task execution role. Muốn image tự sang region hoặc tài khoản khác → bật replication của ECR.
Câu hỏi thường gặp
ECR khác gì Docker Hub?
ECR là kho image riêng trong tài khoản AWS, phân quyền bằng IAM, tích hợp sẵn với ECS, EKS và Lambda, kéo image trong cùng region nhanh và không qua Internet. Docker Hub là kho công khai bên ngoài, có giới hạn số lần kéo.
ECR có quét lỗ hổng image không?
Có. Basic scanning quét khi đẩy image hoặc theo yêu cầu. Enhanced scanning dùng Amazon Inspector để quét liên tục cả gói hệ điều hành lẫn thư viện của ngôn ngữ lập trình.
ECR tính tiền thế nào?
Theo dung lượng image lưu trữ mỗi tháng và lượng dữ liệu truyền ra ngoài. Nên đặt lifecycle policy để tự xoá image cũ, tránh tiền lưu trữ tăng dần.
Đề thi AWS hay hỏi gì về ECR?
Quyền để ECS kéo image (execution role), lifecycle policy xoá image cũ, sao chép image sang region hoặc tài khoản khác, và quét lỗ hổng.