Yol Haritası

Öğrenme Yolu

Nereden başlayacağını bilmiyorsan yukarıdan aşağı ilerle. Her seviyedeki makaleler sıralıdır; bir seviyeyi bitirmeden sonrakine geçmen gerekmez, ama sıra bilinçli seçilmiştir.

Başlangıç 7 makale · yaklaşık 25 dk

Docker'ı hiç kullanmadınsa buradan başla: image ve container farkı, temel komutlar, Dockerfile yazmak, disk ve build bağlamı gibi ilk günlerde karşılaşacağın konular.

  1. Docker Nedir? Container Dünyasına Giriş Docker'ın ne olduğunu, container kavramının nereden geldiğini ve ilk container'ınızı nasıl çalıştıracağınızı temelden öğrenin.
  2. Container vs Sanal Makine: Temel Farklar Container'lar ve sanal makineler izolasyonu farklı katmanlarda sağlar. Aradaki mimari farkı ve ne zaman hangisini seçeceğinizi karşılaştırmalı tabloyla inceleyin.
  3. Docker Nasıl Kurulur? Windows, macOS ve Linux Kurulum Rehberi Docker Desktop ile Windows ve macOS kurulumundan, Linux'ta Docker Engine'i doğrudan sisteme kurmaya kadar adım adım rehber; sık karşılaşılan kurulum hatalarının çözümleriyle.
  4. Temel Docker Komutları: Günlük Kullanım İçin Başvuru Kartı docker ps, exec, logs, images ve system prune gibi her gün ihtiyaç duyacağınız temel komutları, ne işe yaradıklarını açıklayarak tek yazıda topluyoruz.
  5. Docker İmajı ve Container Farkı: Katmanlar, Etiketler ve Yaşam Döngüsü İmaj ile container aynı şey değildir: imajın katmanlarını, etiketlerin neden bir isimden ibaret olduğunu ve container'ın oluşturulma-çalışma-durma yaşam döngüsünü gerçek komut çıktılarıyla öğrenin.
  6. .dockerignore ve Build Bağlamı: docker build Neden Yavaş ve Şişkin? docker build neden yavaş çalışıyor ve imaj neden şişiyor? Build bağlamını 70 MB'tan 124 bayta indiren .dockerignore kalıplarını ve gizli dosyaların imaja sızmasını nasıl…
  7. Docker Disk Kullanımı ve Temizlik: system df, prune ve Tuzaklar Docker diski neden doldurur ve nasıl güvenle temizlenir? docker system df ile ölçüm, prune komutlarının farkları ve volume'lerin neden varsayılan olarak silinmediği gibi gerçek…

Tüm Başlangıç yazıları →

Orta 15 makale · yaklaşık 57 dk

Temelleri biliyorsun; şimdi imajları küçült, build'i hızlandır, Compose ile çok servisli uygulamaları sağlıklı sırayla ayağa kaldır.

  1. Dockerfile Yazmaya Giriş: Kendi İmajınızı Oluşturun Katman önbelleği, multi-stage build ve .dockerignore gibi pratiklerle kendi Docker imajınızı nasıl yazacağınızı öğrenin.
  2. Docker Compose ile Çoklu Servis Yönetimi Docker Compose ile WordPress nasıl kurulur? Birden fazla servisi tek bir docker-compose.yml ile nasıl tanımlayıp yöneteceğinizi, WordPress + MySQL örneği üzerinden adım adım görün.
  3. Docker vs Podman: Hangisini Seçmelisiniz? Daemon mimarisinden rootless çalışmaya, pod kavramından ekosistem büyüklüğüne kadar Docker ve Podman'ı karşılaştırmalı tabloyla masaya yatırıyoruz.
  4. Docker Compose vs Kubernetes: Hangisini Seçmelisiniz? Tek makine ile çok node'lu küme arasındaki farktan otomatik ölçeklemeye, Compose ve Kubernetes'i karşılaştırmalı tabloyla masaya yatırıyoruz.
  5. Docker Swarm Nedir? Çoklu Sunucuda Container Orkestrasyonu Tek sunucudan birden fazla sunucuya geçiş yaparken karşınıza çıkan orkestrasyon ihtiyacını, Docker'ın kendi çözümü Swarm üzerinden manager/worker mimarisi, service ve rolling update örnekleriyle öğrenin.
  6. Kubernetes Temelleri: Pod, Deployment ve Service Nedir? Kubernetes'in en temel üç kavramını — Pod, Deployment ve Service — sıfırdan, gerçek YAML örnekleriyle ve Docker Compose'tan gelenler için bir çeviri tablosuyla anlatıyoruz.
  7. Rootless Container Nedir? Neden Kullanmalısınız? Root yetkisiyle çalışan container'ların neden risk taşıdığını, Dockerfile'da USER talimatından rootless Docker daemon kurulumuna kadar adım adım güvenliği nasıl artıracağınızı öğrenin.
  8. Docker Volumes: Kalıcı Veri Yönetimi Container'lar neden geçicidir, named volume ile bind mount arasındaki fark nedir ve bir veritabanının verisini container yeniden başlasa da nasıl korursunuz — hepsi örneklerle.
  9. Docker Networking: Container’lar Nasıl Haberleşir? Varsayılan bridge ağının sınırlarından özel ağ oluşturmaya, container isimleriyle otomatik DNS çözümlemesinden port eşlemenin doğru okunmasına kadar Docker networking'i baştan sona anlatıyoruz.
  10. Docker Registry ve Docker Hub: İmaj Paylaşımı Nasıl Çalışır? Docker Hub'a imaj push/pull etmekten kendi private registry'nizi ayağa kaldırmaya, GitHub Container Registry gibi alternatiflere kadar imaj paylaşımının tüm yollarını inceliyoruz.
  11. Docker vs Podman: Hangisini Seçmelisiniz? Daemon mimarisinden rootless çalışmaya, pod kavramından ekosistem büyüklüğüne kadar Docker ve Podman'ı karşılaştırmalı tabloyla masaya yatırıyoruz.
  12. Ansible ile Sunucu ve Container Otomasyonu Ajansız, idempotent playbook'larla onlarca sunucuya tutarlı şekilde Docker kurmaktan community.docker koleksiyonuyla container dağıtmaya, rollere kadar Ansible'ı sıfırdan öğrenin.
  13. Multi-Stage Build ile Küçük ve Güvenli İmajlar Multi-stage build ile derleme araçlarını nihai imajın dışında bırakarak imajı 51 MB'tan 21 MB'a nasıl düşüreceğinizi, --target kullanımını ve BuildKit'in gereksiz aşamaları nasıl atladığını…
  14. Docker Compose’ta Healthcheck, depends_on ve .env: Doğru Sırada Başlatma Docker Compose'ta veritabanı hazır olmadan uygulama başlamasın: healthcheck, depends_on koşulları, tek seferlik migrasyon servisleri ve zorunlu .env değişkenleri uçtan uca denenmiş örneklerle.
  15. Build Cache ve BuildKit: Docker Build’i Hızlandırmanın Yolları Docker build her seferinde bağımlılıkları yeniden mi indiriyor? Katman önbelleğinin mantığını, cache mount ile paket önbelleğini ve CI'da önbelleği paylaşmayı gerçek build çıktılarıyla anlatıyoruz.

Tüm Orta yazıları →

İleri 13 makale · yaklaşık 62 dk

Üretim ortamı için: gizli bilgi yönetimi, kaynak limitleri, tedarik zinciri güvenliği, orkestrasyon ve izleme.

  1. Docker Swarm vs Kubernetes: Hangisini Seçmelisiniz? Kurulum kolaylığından ekosistem büyüklüğüne kadar Docker Swarm ve Kubernetes'in orkestrasyon yaklaşımlarını karşılaştırmalı tabloyla inceliyoruz.
  2. Dockerfile vs Buildpacks: Hangisini Seçmelisiniz? Elle yazılan Dockerfile ile otomatik imaj üreten Cloud Native Buildpacks arasındaki kontrol/otomasyon dengesini karşılaştırmalı tabloyla inceliyoruz.
  3. Container Image Güvenliği: Zafiyet Taraması ve En İyi Uygulamalar Küçük taban imaj seçiminden Trivy ile zafiyet taramasına, gizli bilgilerin imaja gömülmesini önlemeye kadar container image güvenliği için pratik bir kontrol listesi.
  4. CI/CD ile Docker: GitHub Actions ile Otomatik Build ve Deploy Kod push edildiği anda imajı otomatik build eden, Trivy ile tarayan, registry'e gönderen ve sunucuda devreye alan uçtan uca bir GitHub Actions pipeline'ı kuruyoruz.
  5. Container İzleme ve Loglama: docker stats’tan Prometheus + Grafana’ya HEALTHCHECK ile sağlık kontrolünden, cAdvisor + Prometheus + Grafana ile ölçeklenebilir izlemeye ve merkezi loglamaya kadar production container'larını gözetim altında tutmanın yollarını anlatıyoruz.
  6. Multi-Arch Build: Tek İmajla ARM ve x86 Desteği (Buildx) Apple Silicon ve ARM tabanlı bulut sunucuları yaygınlaştıkça neden tek mimarili imajlar yetmez oldu; Docker Buildx ile tek etiket altında amd64 ve arm64'ü aynı…
  7. Uçtan Uca Örnek Proje: Bir Node.js API’sini Sıfırdan Production’a Taşımak Multi-stage Dockerfile, volume, network, reverse proxy, CI/CD ve izlemeyi tek bir gerçekçi projede birleştiren, portaldaki tüm konuların buluştuğu uçtan uca referans yazı.
  8. Jenkins ile CI/CD: Docker İmajlarını Otomatik Build ve Deploy Etme Jenkins'i bizzat bir Docker container'ı olarak ayağa kaldırıp, Jenkinsfile ile build → test → zafiyet taraması → push → deploy adımlarını otomatikleştiren gerçek bir…
  9. Terraform ile Altyapıyı Kodlama (Infrastructure as Code) Terraform'un Docker provider'ıyla container/ağ oluşturmaktan bulutta bir sunucu provizyonlamaya, state dosyasından değişken ve modüllere kadar Infrastructure as Code'u pratik örneklerle anlatıyoruz.
  10. Elastic Stack (ELK) ile Container Log Analizi Elasticsearch, Logstash, Kibana ve Filebeat'in nasıl bir araya geldiğinden Docker container loglarını merkezi olarak toplamaya, Logstash pipeline'larıyla ham logu yapılandırılmış veriye çevirmeye kadar ELK…
  11. Gizli Bilgi Yönetimi: Build Secrets ve Compose Secrets Parola ve token'ları ARG ya da ENV ile vermek neden tehlikeli? Sızıntıyı gerçek bir deneyle gösterip BuildKit secret mount ve Compose secrets ile gizli…
  12. Container Kaynak Limitleri: Bellek, CPU, PID ve OOM Davranışı Bir container tüm sunucuyu çökertmesin: --memory, --cpus ve --pids-limit ayarları, OOM kill'in (çıkış kodu 137) nasıl göründüğü ve Compose'ta limit tanımlama, gerçek çıktılarla.
  13. Tedarik Zinciri Güvenliği: SBOM, Provenance ve Cosign ile İmaj İmzalama İmajınızın içinde ne var, nasıl üretildi ve gerçekten sizin mi? Buildx ile SBOM ve provenance üretimini, cosign ile digest imzalamayı ve kimlik doğrulamasıyla verify…

Tüm İleri yazıları →

35 makale yol haritasında.