Blogchevron_rightSunucu Yönetimichevron_rightDocker Registry Kurulum Rehberi

Docker Registry Kurulum Rehberi

S
Serversium
calendar_today17 Mayıs 2026
schedule5 dk okuma
Docker Registry Kurulum Rehberi

Docker Registry Nedir ve Neden Kendi Sunucunuza İhtiyacınız Var?

Docker registry, container imajlarının depolandığı ve dağıtıldığı merkezi bir repository sistemidir. Docker Hub varsayılan public registry olarak kullanılsa da, kurumsal projelerde ve ticari uygulamalarda özel Docker registry kullanımı zorunlu hale gelmiştir.

Gartner'ın 2024 raporuna göre, kurumsal şirketlerin %78'i container güvenliği için özel registry çözümlerini tercih etmektedir. Bunun temel nedenleri arasında veri sızıntısı riskleri, imaj bütünlüğü kontrolü ve compliance gereksinimleri yer almaktadır.

Kendi Docker registry sunucunuzu kurmak, imajlarınızın üçüncü tarafların erişiminden korunmasını sağlar. Ayrıca CI/CD pipeline'larında daha hızlı dağıtım yapabilir ve internet bağımlılığını azaltabilirsiniz.

Public vs Private Docker Registry Karşılaştırması

Özellik Public Registry Private Registry
Erişim Kontrolü Herkes erişebilir Kullanıcı bazlı yetkilendirme
Veri Güvenliği Dış sunucularda depolanır Kendi altyapınızda saklanır
Dağıtım Hızı İnternet bağımlı Yerel ağda çok hızlı
Maliyet Ücretsiz planlar mevcut Sunucu maliyeti gerekir
Compliance GDPR/KVKK uyumsuz olabilir Tam kontrol ve uyumluluk

Docker Registry Kurulumu: Adım Adım Rehber

Docker Registry kurulumu oldukça basittir. Aşağıdaki adımları takip ederek kendi özel registry sunucunuzu dakikalar içinde çalıştırabilirsiniz. İlk olarak mevcut bir sanal sunucu üzerinde Docker'ın yüklü olduğundan emin olun.

1. Adım: Docker Registry Container'ını Başlatma

En basit yöntem, Docker'ın resmi registry image'ını kullanmaktır. Aşağıdaki komutla registry sunucunuzu 5000 portunda çalıştırabilirsiniz:

docker run -d \
  --name registry \
  --restart=always \
  -p 5000:5000 \
  -v registry-data:/var/lib/registry \
  registry:2

Bu komut, registry verilerini kalıcı olarak saklamak için named volume kullanmaktadır. Production ortamında immutable yedekleme stratejileri ile birlikte kullanmanızı öneririz.

2. Adım: SSL/TLS Sertifikası Yapılandırması

Güvenli bir registry için SSL sertifikası zorunludur. Let's Encrypt ücretsiz sertifikalarını kullanabilir veya kendi sertifika otoritenizi kurabilirsiniz. Production ortamında sunucu güvenlik duvarı yapılandırması da önemlidir.

# Self-signed sertifika oluşturma
openssl req -x509 -days 365 -nodes \
  -newkey rsa:2048 \
  -keyout registry.key \
  -out registry.crt \
  -subj "/C=TR/L=Istanbul/O=Sirketiniz/CN=registry.sirketiniz.com"

3. Adım: Temel Kimlik Doğrulama (Basic Auth)

Registry'nize erişimi kısıtlamak için temel kimlik doğrulama ekleyin. Öncelikle htpasswd aracı ile kullanıcı oluşturmanız gerekir:

# Kullanıcı oluşturma
mkdir auth
docker run --entrypoint htpasswd httpd:2 -Bbn admin sifre123 > auth/htpasswd

# Registry'yi kimlik doğrulama ile yeniden başlatma
docker run -d \
  --name registry \
  --restart=always \
  -p 5000:5000 \
  -v registry-data:/var/lib/registry \
  -v "$(pwd)"/auth:/auth \
  -e REGISTRY_AUTH=htpasswd \
  -e REGISTRY_AUTH_HTPASSWD_REALM="Registry Realm" \
  -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
  registry:2

Docker İmajlarınızı Private Registry'ye Push Etme

Private registry'niz çalıştıktan sonra, imajlarınızı bu sunucuya nasıl göndereceğinizi öğrenmeniz gerekir. Bu süreç birkaç basit adımdan oluşmaktadır.

İmajı Etiketleme

Önce local imajınızı registry'nizin adresiyle etiketleyin:

docker tag myapp:latest registry.sirketiniz.com:5000/myapp:latest

Burada "registry.sirketiniz.com" yerine kendi sunucu adresinizi kullanmalısınız. Eğer DNS yapılandırması yapmadıysanız, IP adresi de kullanabilirsiniz.

Registry'ye Push Etme

Etiketlenen imajı private registry'nize gönderin:

docker push registry.sirketiniz.com:5000/myapp:latest

Başarılı bir push işleminden sonra, imajınız güvenli bir şekilde private registry'nizde saklanmaktadır. Bu imajı başka sunucularda çekmek için aynı adresi kullanmanız yeterlidir.

Docker Client Yapılandırması

Private registry'yi güvenilir olarak eklemeniz gerekmektedir:

# Linux için
sudo mkdir -p /etc/docker/certs.d/registry.sirketiniz.com:5000
sudo cp registry.crt /etc/docker/certs.d/registry.sirketiniz.com:5000/ca.crt
sudo systemctl restart docker

Windows ve macOS'ta Docker Desktop ayarlarından "Insecure Registry" ekleyebilirsiniz.

Docker Registry Güvenlik En İyi Uygulamaları

Private registry kurulumu sadece başlangıçtır. İmajlarınızı gerçekten gizli tutmak için aşağıdaki güvenlik önlemlerini almanız kritik öneme sahiptir.

1. Erişim Kontrolü ve RBAC

Registry'nize erişimi sıkı şekilde kontrol altına alın. Her proje için ayrı kullanıcı hesapları oluşturun ve minimum yetki prensibi uygulayın. Token-based authentication kullanarak daha granüler kontrol sağlayabilirsiniz.

Enterprise ortamlarda ISO 27001 sertifikalı altyapı kullanmanızı öneririz.

2. İmaj Tarama ve Vulnerability Analizi

Deploy etmeden önce tüm imajları vulnerability taramasından geçirin. Açık kaynak araçlar olan Trivy veya Clair kullanabilirsiniz:

# Trivy ile imaj taraması
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \
  aquasec/trivy image registry.sirketiniz.com:5000/myapp:latest

IDC'nin araştırmasına göre, düzenli vulnerability taraması yapan şirketler %65 daha az güvenlik ihlali yaşamaktadır.

3. Network Güvenliği

Registry sunucunuzu public internetten izole edin. Güvenlik duvarı kuralları ile sadece gerekli IP aralıklarından erişime izin verin. Internal ağda kullanılan registry'ler için VPN tunnel kullanmanızı öneririz.

4. İmaj İmzalama

Docker Content Trust kullanarak imjaları dijital olarak imzalayın:

# Docker Content Trust etkinleştirme
export DOCKER_CONTENT_TRUST=1

# İmzalı imaj push etme
docker push registry.sirketiniz.com:5000/myapp:latest

Bu özellik, imajların bütünlüğünü ve kaynağını doğrulamanıza olanak tanır.

Production Ortamında Docker Registry Yönetimi

Production'da registry yönetimi, geliştirme ortamından farklı dikkat gerektirir. Yüksek kullanılabilirlik, yedekleme ve monitoring sistemleri kurmanız gerekir.

Yüksek Kullanılabilirlik Yapılandırması

Production ortamında tek registry sunucusu yeterli değildir. En az iki sunucu ile load balancer ardında çalıştırmanızı öneririz. Bu yapı, planned maintenance sırasında bile kesintisiz hizmet sağlar.

Birden fazla VDS sunucu kullanarak HA registry cluster oluşturabilirsiniz.

Depolama Yönetimi

Registry verileri hızla büyüyebilir. Bu nedenle uygun depolama stratejisi belirleyin:

  • Local Disk: Küçük ekipler için uygun, en basit çözüm
  • Object Storage: S3, MinIO gibi çözümlerle sonsuz ölçeklenebilirlik
  • Distributed Filesystem: GlusterFS veya Ceph ile yüksek dayanıklılık

Garbage Collection

Kullanılmayan imajları ve layer'ları temizleyerek disk alanı kazanın:

# Registry garbage collection
docker exec registry bin/registry garbage-collect \
  /etc/docker/registry/config.yml

Bu işlemi düzenli olarak cron job olarak çalıştırmanızı öneririz.

Alternatif Registry Çözümleri

Docker Registry v2 açık kaynak çözümünün yanı sıra, ticari alternatifler de mevcuttur. İhtiyaçlarınıza göre doğru seçimi yapmanız önemlidir.

Popüler Enterprise Registry Çözümleri

Çözüm Tip Öne Çıkan Özellik
Harbor Open Source GUI, vulnerability scanning, replication
JFrog Artifactory Ticari Multi-registry support, advanced security
GitHub Packages Cloud GitHub entegrasyonu, kolay kurulum
Google Artifact Registry Cloud GCP entegrasyonu, managed service

Küçük ve orta ölçekli projeler için Docker Registry v2 yeterli olabilir. Ancak enterprise özellikler (GUI, RBAC, replication) gerekiyorsa Harbor gibi çözümleri değerlendirebilirsiniz.

Sonuç ve Öneriler

Kendi Docker registry sunucunuzu kurmak, container imajlarınızı gizli tutmanın en güvenilir yoludur. Bu rehberde anlatılan adımları takip ederek, production seviyesinde güvenli bir registry altyapısı oluşturabilirsiniz.

Özetle, başarılı bir private registry kurulumu için:

  1. SSL/TLS sertifikası kullanın
  2. Kimlik doğrulama mekanizması ekleyin
  3. Network erişimini kısıtlayın
  4. Düzenli vulnerability taraması yapın
  5. Yedekleme stratejisi belirleyin
  6. Monitoring ve logging aktif edin

Docker registry güvenliği hakkında daha fazla bilgi için Portainer ile container yönetimi rehberimize de göz atabilirsiniz. Ayrıca web sitesi optimizasyonu konusunda container imajlarınızın boyutunu nasıl küçülteceğinizi öğrenebilirsiniz.

library_booksBenzer İçerikler

Cloud Sunucu Nedir? Avantajları ve Detaylı Rehber
Sunucu Yönetimi
calendar_today5 Nisan 2026
schedule5 dk

Cloud Sunucu Nedir? Avantajları ve Detaylı Rehber

Cloud sunucular, dinamik kaynak dağıtımıyla işletmelerin kesintisiz büyümesini sağlar. Avantajlardan karşılaştırmalara tüm detaylar bu rehberde yer alıyor.

S
Serversiumarrow_forward
Linux vs Windows Sunucu: Hangisi Projeye Uygun?
Sunucu Yönetimi
calendar_today6 Nisan 2026
schedule5 dk

Linux vs Windows Sunucu: Hangisi Projeye Uygun?

Linux ve Windows Sunucu arasındaki teknik farkları, maliyet avantajlarını ve proje uyumluluğunu detaylı olarak karşılaştırıyoruz. Yazılım stack'inize en uygun işletim sistemini seçmek için kapsamlı rehberimizle doğru altyapı kararını verin.

S
Serversiumarrow_forward
Plesk Kurulumu - Ubuntu 24 Üzerinde Adım Adım Rehber
Sunucu Yönetimi
calendar_today16 Nisan 2026
schedule5 dk

Plesk Kurulumu - Ubuntu 24 Üzerinde Adım Adım Rehber

Ubuntu 24 üzerinde Plesk kurulumunu adım adım öğrenin. Bu rehberde sistem gereksinimleri, kurulum adımları ve temel yapılandırma ayarlarını bulabilirsiniz.

S
Serversiumarrow_forward