Nedir Container Registry
Docker imaj depolama
Container Registry
Container Registry, Docker imajları ve diğer OCI uyumlu artifaktlar için merkezi depolamadır ve sürüm kontrolü, erişim kontrolü ve konteyner dağıtımı sağlar.
Registry Türleri
| Tür | Örnekler | |-----|----------| | Genel | Docker Hub, GitHub Container Registry | | Bulut | AWS ECR, Google GCR, Azure ACR | | Self-hosted | Harbor, Nexus, JFrog Artifactory | | GitLab | GitLab Container Registry |
Temel Özellikler
- İmaj depolama — Merkezi repository
- Sürüm kontrolü — Kimlik için etiketler ve digest
- Erişim kontrolü — RBAC ve güvenlik politikaları
- Güvenlik açığı tarama — Trivy, Clair ile entegrasyon
- Çoğaltma — Bölgeler arası yansıtma
Registry ile Çalışma
| Komut | Açıklama | |-------|----------| | docker login | Registry'ye kimlik doğrulama | | docker push | İmaj yükleme | | docker pull | İmaj indirme | | docker tag | Etiket oluşturma |
En İyi Uygulamalar
- Değişmez etiketler kullanın (latest değil)
- Güvenlik açıkları için imajları tarayın
- İmajları imzalayın (Cosign, Notary)
- Eski imajlar için temizleme politikası ayarlayın
- Garbage collection'ı etkinleştirin
CI/CD Entegrasyonu
# GitLab CI örneği
build:
script:
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA