İçindekiler
- Hızlı Karşılaştırma
- Docker Hub: Yaygın ve kolay başlangıç
- GitHub Packages (GHCR): Repo ile sıkı entegrasyon
- GitLab Container Registry: Tek yerden kod ve imaj yönetimi
- Amazon ECR Public: Global erişim için pratik
- Quay.io: Güvenlik ve ince erişim kontrolü
- Harbor: Self‑hosted, kontrolü elinde tutmak isteyenlere
- Hangisini Seçmelisin?
- Sıkça Sorulan Sorular
Docker image'larını depolamak, paylaşmak ve CI/CD iş akışlarına entegre etmek geliştiriciler için günlük bir ihtiyaç haline geldi. Bu rehberde ücretsiz Docker container registry ve image hosting alternatifleri üzerinde duruyoruz; hangi servisin hangi durumda daha uygun olduğunu, ücretsiz planda hangi sınırlamalar olabileceğini ve self-hosted seçeneklerin artılarını-elekilerini anlatıyoruz.
Docker Hub uzun yıllardır en bilinen isim olsa da GitHub Packages, GitLab Container Registry, Amazon ECR Public, Quay.io ve self-hosted Harbor gibi alternatifler farklı kullanım senaryoları için daha iyi çözümler sunuyor. Öğrenci, serbest çalışan veya küçük ekip olsan da doğru registry seçimi deploy süreçlerini, maliyeti ve güvenliği doğrudan etkiler.
Hızlı Karşılaştırma
| Program | Platform | En iyi olduğu iş | Ücret |
|---|---|---|---|
| Docker Hub | Web, CLI | Genel imaj paylaşımı ve hızlı dağıtım | Ücretsiz planda sınırlamalar var |
| GitHub Packages (GHCR) | Web, CLI | GitHub ile sıkı entegrasyon, CI/CD akışları | Ücretsiz planda sınırlamalar var |
| GitLab Container Registry | Web, CLI | GitLab tabanlı projeler ve tek yerde yönetim | Ücretsiz planda sınırlamalar var |
| Amazon ECR Public | AWS, CLI | Kamuya açık imaj barındırma ve global erişim | Genel kullanım için ücretsiz (sınırlı) |
| Quay.io | Web, CLI | Güvenlik taramaları ve gelişmiş erişim kontrolü | Ücretsiz planda sınırlamalar var |
| Harbor | Self‑hosted | Kurumsal self‑hosted registry, politikalar | Yazılım ücretsiz; sunucu maliyeti var |
Docker Hub: Yaygın ve kolay başlangıç
Docker Hub en yaygın bilinen container registry'dir ve birçok açık kaynak projesinin standart olarak kullandığı yerdir. CLI ve GUI üzerinden kolay kullanım, hazır resmi imajlar ve geniş topluluk desteği sayesinde yeni başlayanlar için erişmesi en kolay çözümlerden biridir.
Ancak Docker Hub'ın ücretsiz planında bazı sınırlamalar bulunur; erişim oranları, depolama/transfer sınırlandırmaları ve özel repo sayısı gibi konularda kısıtlar olabilir. Kurumsal veya yüksek trafik gerektiren kullanımda ücretli planlar ya da alternatif çözümler değerlendirilebilir.
Artıları
- Yeni başlayanlar ve tek kişilik projeler için hızlı kurulum
- Resmi imajlar ve geniş ekosistem desteği
- CLI entegrasyonu yaygın ve dokümantasyon bol
Eksileri
- Ücretsiz planda kullanım sınırlamaları ve oran kısıtları olabilir
- Büyük ekipler için erişim kontrolü ve yönetim sınırlı kalabiliyor
Kimler için? Hızlıca public imaj paylaşmak veya popüler resmi imajları kullanmak isteyenler için.
GitHub Packages (GHCR): Repo ile sıkı entegrasyon
GitHub Packages içindeki GitHub Container Registry (GHCR), GitHub hesap ve repo ekosistemiyle doğrudan entegre çalışır. Kod, CI eylemleri (Actions) ve paket yönetimini tek platformda tutmak isteyen projeler için doğal bir tercih olur. Özellikle açık kaynak projeler için public paket depolamak çok uygundur.
Özel (private) imaj depolamaları ve bant genişliği konusunda ücretsiz planda sınırlamalar olabilir; ancak GitHub hesabı ve Actions ile birleştiğinde otomasyon ve erişim yönetimi açısından güçlü bir deneyim sunar.
Artıları
- GitHub Actions ile sorunsuz CI/CD entegrasyonu
- Repo tabanlı erişim kontrolleri ve izin yönetimi
- Public paketler için uygun ve yaygın destek
Eksileri
- Büyük ölçekli özel imaj depolamada ücretli sınırlar söz konusu olabilir
- GitHub ekosistemine bağımlı olmak istemeyenler için dezavantaj
Kimler için? Kod ve paket yönetimini GitHub altında birleştirmek isteyen geliştiriciler ve küçük ekipler için.
GitLab Container Registry: Tek yerden kod ve imaj yönetimi
GitLab Container Registry, GitLab projeleriyle entegre çalışan bir çözümdür. Pipeline'lar, CI runner'lar ve repo yönetimi ile tek bir platformda imaj oluşturma ve dağıtma iş akışlarını kurgulamak kolaydır. Özellikle GitLab kullanıyorsan, erişim kontrolü ve proje seviyesinde yönetim pratik olur.
GitLab'ın ücretsiz planı birçok küçük ekip için yeterli olsa da depolama ve transfer konusunda kısıtlar olabilir; self-hosted GitLab kullanımı da bir seçenek olup altyapı yönetimi gerektirir.
Artıları
- GitLab CI ile bütünleşik iş akışları
- Proje seviyesinde registry ve izin yönetimi
- Hem SaaS hem self-hosted seçenekleri var
Eksileri
- Ücretsiz planda depolama/transfer sınırlamaları olabilir
- Self-hosted tercih edersen sunucu yönetimi gerektirir
Kimler için? GitLab kullanan takımlar ve projelerini tek platformda tutmak isteyenler için.
Amazon ECR Public: Global erişim için pratik
Amazon ECR Public, AWS ekosisteminde kamuya açık imaj barındırma çözümüdür. Global erişim ve performans avantajı ile CDN benzeri dağıtım avantajları sunar; AWS altyapısına zaten bağlı olan projeler için entegrasyon kolaydır.
ECR Public, public imajlar için maliyet avantajı sağlar; ancak private depolama ve transfer ihtiyaçlarında AWS faturası söz konusu olabilir. AWS servisleriyle çalışıyorsan CI/CD entegrasyonu ve IAM tabanlı güvenlik iyi bir seçenek olur.
Artıları
- Public imajlar için global erişim ve AWS entegrasyonu
- Performans ve güvenlik için AWS altyapısı avantajı
Eksileri
- AWS dışındaki ekosistemlerle entegrasyon biraz daha karmaşık olabilir
- Private kullanımda maliyetler ortaya çıkabilir
Kimler için? AWS üzerinde çalışan projeler ve public imajlarını geniş kitleye sunmak isteyenler için.
Quay.io: Güvenlik ve ince erişim kontrolü
Quay.io (Red Hat Quay), imaj güvenlik taramaları, detaylı erişim kontrolleri ve kurumsal özellikleriyle öne çıkar. Otomatik taramalar, rollback ve depolama politikaları gibi özellikler güvenlik bilinci yüksek ekipler için faydalıdır.
Quay'in ücretsiz katmanı genelde public repolar için uygundur; özel/kurumsal ihtiyaçlarda ücretli katmanlar veya self-hosted Quay tercih edilebilir.
Artıları
- Gelişmiş güvenlik taramaları ve policy yönetimi
- İnce taneli erişim kontrolü ve audit özellikleri
Eksileri
- Ücretsiz planda özel depo ve gelişmiş özelliklerde sınırlamalar olabilir
- Tam entegre kurumsal kullanım için ücretli seçenek gerekebilir
Kimler için? Güvenlik taramaları ve ayrıntılı erişim kontrolü arayan ekipler için.
Harbor: Self‑hosted, kontrolü elinde tutmak isteyenlere
Harbor açık kaynaklı, kurumsal sınıf bir container registry çözümüdür. Politikalar, rol‑tabanlı erişim, replikasyon, imaj taramaları ve audit log gibi özellikleriyle kendi altyapında registry çalıştırmak isteyenler için uygundur. Yazılım ücretsizdir; ancak sunucu ve işletim maliyetleri senin sorumluluğundadır.
Self‑hosted bir çözüm olduğu için tam kontrol, veri mahremiyeti ve özelleştirme imkanı sağlar; ama yedekleme, ölçeklendirme ve güvenlik yönetimi gibi konuları da üstlenmen gerekir.
Artıları
- Tam kontrol: veriler kendi altyapında kalır
- Zengin politika ve yönetim özellikleri
- Açık kaynak ve community desteği
Eksileri
- Sunucu, bakım ve işletme maliyetleri senin sorumluluğunda
- Ölçeklendirme ve yüksek erişilebilirlik için ekstra planlama gerekebilir
Kimler için? Veri kontrolünü elinde tutmak ve self‑hosted registry çalıştırmak isteyen ekipler için.
Hangisini Seçmelisin?
- Hızlı ve yaygın erişim, açık kaynak imajlar: Docker Hub
- Kod, paket ve CI'yi GitHub'da birleştirmek istiyorsan: GitHub Packages (GHCR)
- GitLab kullanıyorsan ve pipeline'larla entegre etmek istiyorsan: GitLab Container Registry
- AWS ekosistemindeysen ve public imaj paylaşacaksan: Amazon ECR Public
- Güvenlik taramaları ve detaylı erişim kontrolü öncelikliyse: Quay.io
- Tam kontrol, kendi altyapın ve özelleştirme istiyorsan: Harbor (self‑hosted)
Sıkça Sorulan Sorular
Ücretsiz registry'ler güvenli mi?
Genel olarak public registry'ler güvenlik açısından farklı seviyelerde özellik sunar; imaj taramaları, imaj imzalama ve erişim kontrolleri sağlayan servisler daha güvenlidir. Kritik üretim imajları için ya güvenlik taraması yapan bir servis kullanmak ya da self‑hosted çözümle güvenlik politikalarını uygulamak önerilir.
Public imajlar ücretsiz mi?
Çoğu servis public imaj barındırmak için ücretsiz seçenek sunar, ancak depolama ve bant genişliği konusunda sınırlar olabilir. Private imajlar veya yüksek transfer gereksinimleri için ücretli planlar veya alternatif çözümler gerekebilir.
CI/CD ile hangi registry en kolay entegre olur?
Kullandığın kod barındırma platformuna bağlı olarak en kolay entegrasyon değişir: GitHub için GHCR, GitLab için GitLab Container Registry doğal entegrasyon sağlar. AWS altyapısı kullanıyorsan ECR bir adım önde olur.
Self‑hosted mi yoksa SaaS mi tercih etmeliyim?
Self‑hosted çözümler (ör. Harbor) tam kontrol ve veri mahremiyeti sunar ama altyapı yönetimi, yedekleme ve ölçeklendirme sorumlulukları getirir. SaaS çözümler yönetim kolaylığı sağlar; ama veri ve maliyet kontrolü açısından kısıtlamalar olabilir. Önceliğin kontrol mü yoksa yönetim kolaylığı mı, ona göre seçim yap.
Mevcut imajlarımı başka bir registry'ye taşımak zor mu?
Genelde CLI araçları (docker pull/push, skopeo vb.) ile imajları çekip başka bir registry'ye göndermek mümkündür. Taşıma yaparken tag, manifest ve erişim politikalarını korumaya dikkat etmek gerekir.
Bu rehber, ücretsiz ve self‑hosted container registry seçeneklerini pratik açıdan karşılaştırman için hazırlandı. Seçimini yaparken depolama, transfer ihtiyaçları, güvenlik gereksinimleri ve mevcut CI/CD ekosistemini göz önünde bulundur; gerekirse birden fazla çözümü birlikte kullanmak da mümkün.









