DOCKER COMPOSE İLE ÇOK KONTEYNERLİ UYGULAMA YÖNETİMİ EĞİTİMİ

Çok konteynerli uygulamaları Compose ile yönetin

compose.yaml, servis, ağ ve volume, depends_on healthcheck, profiles, override dosyaları, veritabanı kalıcılığı, loglama ve CI.

Bu eğitim, Docker Compose ile çok konteynerli uygulamaların tanımlanması ve işletilmesini öğretir. Docker temelleri ve Dockerfile ile başlar; Compose kurulumu ve terminolojisi, compose.yaml yapısı, servis/ağ/volume tanımları, depends_on ve healthcheck, env_fi…

3 gün Temel Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Docker Compose ile web, veritabanı ve önbellek içeren uygulamaların yönetimi

Bu eğitim, Docker Compose ile çok konteynerli uygulamaların tanımlanması ve işletilmesini öğretir. Docker temelleri ve Dockerfile ile başlar; Compose kurulumu ve terminolojisi, compose.yaml yapısı, servis/ağ/volume tanımları, depends_on ve healthcheck, env_file, profiles ve override dosyaları, PostgreSQL kalıcılığı ve yedekleme, loglama, hata ayıklama ve CI'da Compose kullanımı laboratuvarlarda uygulanır.

Süre ve Format

3 Gün. Her gün dört modül; Docker ve Compose Temeli, Ağ, Veri ve İleri Özellikler, Mikroservis, Log ve Teslimat konuları uygulamalı işlenir.

Seviye

Temel Seviye — Docker Compose ile çok konteynerli uygulamaları tanımlama, çalıştırma ve işletme.

Öğrenme Metodu

Web, API, PostgreSQL ve Redis içeren bir uygulama üç günde adım adım Compose ile büyütülür.

Neden Bu Eğitim?

📦Taşınabilir Paketleme

Uygulamayı bağımlılıklarıyla tek imaja koyup geliştirmeden üretime birebir aynı şekilde çalıştırırsınız.

⚙️Tekrarlanabilir Teslimat

Derleme, test ve dağıtım adımlarını konteynerle tutarlı ve otomatikleştirilebilir hale getirirsiniz.

🛡️Güvenli İşletim

İmaj tarama ve yetki kısıtlamasıyla üretimdeki saldırı yüzeyini ve arıza riskini azaltırsınız.

Anahtar Konular

docker composecompose.yamldocker compose eğitimiçok konteynerli uygulamadepends_on healthcheckdocker compose profilesdocker compose volumecompose overridedocker compose postgresqldocker compose kurulum
“Bir YAML dosyası, tüm uygulama ortamınızın tarifidir.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Linux Komut Satırı

Temel Linux komutları, dosya izinleri ve bir metin düzenleyici (vim/nano) ile rahat çalışmak beklenir.

2
Çalışma Ortamı

Docker Engine kurulu bir Linux VM ya da Docker Desktop ve en az 8 GB RAM önerilir.

3
Ağ Temeli

IP adresi, port, DNS ve HTTP kavramlarına temel düzeyde aşinalık faydalıdır.

4
Uygulama Bilgisi

Herhangi bir dilde yazılmış basit bir web uygulamasını çalıştırabilmek içeriği somutlaştırır.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı Compose kurup ilk çok servisli uygulamayı çalıştırabilir.
Modül 1
Temel Docker CLI Komutları
  • docker run bayrakları: -d, -it, --rm, --name, -p, -e, --restart ve --entrypoint kullanımı
  • Konteyner durumları: create, start, pause, stop, kill ve rm arasındaki farklar
  • docker exec ile çalışan konteynere girme, docker cp ile dosya taşıma
  • docker logs -f --tail ve docker top, docker stats ile anlık gözlem
  • docker inspect çıktısında --format (Go template) ile IP, mount ve env değerlerini çekme
  • docker ps -a filtreleri, docker container prune ve çıkış kodlarının yorumlanması
Modül 2
Dockerfile Yazımı
  • FROM, WORKDIR, COPY ve RUN talimatları; RUN zincirleme ve katman sayısı yönetimi
  • COPY ile ADD farkı, .dockerignore ile bağlam boyutunu küçültme
  • CMD ile ENTRYPOINT ayrımı: exec form ve shell form, PID 1 ve sinyal iletimi
  • ARG ile ENV farkı, build-time ve run-time değişken yönetimi
  • USER ile root dışı çalışma, EXPOSE ve LABEL (OCI annotation) kullanımı
  • HEALTHCHECK talimatı: interval, timeout, retries ve docker ps içinde health durumu
Modül 3
Compose Terminolojisi ve Kurulum
  • Compose terminolojisi: project, service, container, network ve volume ilişkisi
  • Compose v1 (docker-compose, Python) ile v2 (docker compose, Go eklentisi) farkı
  • Linux üzerinde docker-compose-plugin kurulumu ve docker compose version doğrulaması
  • Compose Specification ve YAML söz dizimi kuralları: girinti, tip ve listeler
  • Proje adı belirleme (-p, COMPOSE_PROJECT_NAME) ve kaynak adlandırma kuralları
  • İlk compose.yaml: nginx servisi yazma, ağ/volume oluşumunu docker network ls ile gözleme
Modül 4
Docker Compose ile Çok Konteynerli Uygulamalar
  • compose.yaml yapısı: services, networks, volumes ve image / build alanları
  • ports, environment, env_file ve .env ile yapılandırma ayrıştırma
  • depends_on ve condition: service_healthy ile başlatma sırası kontrolü
  • docker compose up -d, down -v, ps, logs -f, exec ve run komutlarının kullanımı
  • Birden fazla dosyayla ortam ayrımı: compose.override.yaml ve -f birleştirme
  • docker compose config ile birleşmiş yapılandırmayı doğrulama ve değişken yerine koyma
Günün hedefiKatılımcı izole ağlar ve kalıcı veriyle profil ve override tabanlı yapılandırma yazabilir.
Modül 1
Docker Ağ Modelleri
  • Varsayılan bridge (docker0) ile kullanıcı tanımlı bridge farkı ve otomatik DNS çözümleme
  • Ağ sürücüleri: bridge, host, none, overlay, macvlan ve ipvlan kullanım alanları
  • Port yayınlama (-p, -P), iptables DOCKER zinciri ve NAT kuralları
  • docker network create --subnet / --gateway ile özel alt ağ ve sabit IP atama
  • Konteynerler arası iletişim: servis adıyla erişim, --network-alias ve çoklu ağa bağlama
  • tcpdump, nslookup ve docker network inspect ile ağ sorunlarını teşhis etme
Modül 2
Volume, Bind Mount ve tmpfs
  • Üç depolama türü: named volume, bind mount ve tmpfs; --mount ile -v söz dizimi farkı
  • docker volume create / inspect / prune ve /var/lib/docker/volumes yapısı
  • Bind mount izinleri: host UID/GID eşleşmesi, :ro bayrağı ve SELinux için :z / :Z etiketi
  • Volume yedekleme ve geri yükleme: geçici konteyner ile tar arşivleme
  • Veritabanı konteynerlerinde (PostgreSQL, MySQL) veri dizini kalıcılığı ve initdb betikleri
  • Volume sürücüleri: local sürücüde NFS / CIFS seçenekleri ve konteynerler arası veri paylaşımı
Modül 3
Veritabanı Verisi ve Yedekleme
  • PostgreSQL ve MySQL imajlarında veri dizini (/var/lib/postgresql/data, /var/lib/mysql) ve volume bağlama
  • /docker-entrypoint-initdb.d ile ilk kurulum SQL betikleri
  • pg_dump / mysqldump ile mantıksal yedek alıp konteyner dışına çıkarma
  • Volume anlık yedeği: tar ile arşivleme ve farklı hosta taşıma
  • Volume silme riskleri: docker compose down -v ve docker volume prune uyarıları
  • Yedek doğrulama ve geri yükleme tatbikatı (restore test)
Modül 4
Compose İleri Özellikleri
  • profiles ile isteğe bağlı servisler (debug, test) ve --profile kullanımı
  • secrets ve configs tanımları, /run/secrets altından okuma
  • healthcheck, restart politikaları ve deploy.resources limit/reservation ayarları
  • extends ve YAML anchor (&, *) ile tekrarı azaltma
  • docker compose up --scale ile yatay çoğaltma ve yük dengeleme için nginx önü
  • docker compose watch ile geliştirme sırasında otomatik senkron ve yeniden derleme
Günün hedefiKatılımcı Compose yığınını izleyip hata ayıklayarak CI hattında kullanabilir.
Modül 1
Mikroservisleri Konteynerleştirme
  • Servis başına Dockerfile standartları ve ortak taban imaj stratejisi
  • Monolitten ayrılan modülü strangler fig yaklaşımıyla konteynere taşıma
  • Compose ile çoklu servis topolojisi: gateway, servisler, veritabanı ve mesaj kuyruğu
  • Yapılandırmanın ortama göre dışarıdan verilmesi: env değişkenleri, config dosyaları ve secrets
  • Servisler arası ağ izolasyonu: frontend ve backend ağlarının ayrılması
  • Her servis için healthcheck, graceful shutdown (SIGTERM) ve merkezi log çıkışı
Modül 2
Loglama ve İzleme
  • Log sürücüleri: json-file, local, syslog, journald, fluentd ve gelf farkları
  • max-size / max-file ile log rotasyonu ve disk dolmasının önlenmesi
  • cAdvisor ile konteyner metriği toplama ve Prometheus scrape yapılandırması
  • Grafana panoları: CPU, bellek, ağ ve yeniden başlama sayısı
  • Docker Engine metrics-addr ile daemon metriklerini açma
  • Uyarı kuralları: yeniden başlama döngüsü ve bellek eşiği için Alertmanager örneği
Modül 3
Sorun Giderme
  • Çıkış kodlarını yorumlama: 0, 1, 125-127, 137 (SIGKILL/OOM), 139 (SIGSEGV), 143 (SIGTERM)
  • docker events, docker logs ve journalctl -u docker.service ile olay izleme
  • Çalışan konteynere müdahale: docker exec, nsenter ve kabuksuz imajlar için docker debug / ephemeral yaklaşımı
  • Ağ sorunları: DNS çözümleme, port çakışması ve iptables kural kontrolü
  • Disk dolması: docker system df -v, overlay2 dizin büyümesi ve temizlik stratejisi
  • Daemon açılmama durumları: daemon.json sözdizimi hataları ve storage driver sorunları
Modül 4
Docker ile CI/CD Hatları
  • GitHub Actions: docker/setup-buildx-action, docker/build-push-action ve cache-from / cache-to
  • GitLab CI ve Jenkins ajanlarında Docker-in-Docker ile docker.sock bağlama farkları
  • Etiketleme: git SHA, semver ve branch tabanlı etiket üretimi (docker/metadata-action)
  • Konteyner içinde birim ve entegrasyon testi: Testcontainers ve compose tabanlı test ortamı
  • Güvenlik geçidi: Trivy taraması başarısızsa pipeline durdurma ve SBOM üretimi (syft)
  • Ortam terfisi: aynı imajı dev, staging, prod ortamlarına yeniden derlemeden taşıma

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
CLI Yetkinliği

docker run, exec, logs ve inspect komutlarıyla konteyner yaşam döngüsünü eksiksiz yönetebilirsiniz.

✅
Compose Altyapısı

Compose v2 eklentisini kurup proje, servis ve konteyner kavramlarını doğru ayırt edebilirsiniz.

✅
Compose Kullanımı

compose.yaml ile web, veritabanı ve önbellek içeren çok servisli uygulamaları tek komutla ayağa kaldırabilirsiniz.

✅
Kalıcı Veri

Named volume, bind mount ve tmpfs seçeneklerini doğru kullanarak verinin konteynerden bağımsız kalıcılığını sağlayabilirsiniz.

✅
Veri Yedekleme

PostgreSQL ve MySQL verilerini volume üzerinde saklayıp yedekleme/geri yükleme süreçlerini yönetebilirsiniz.

✅
Servis Paketleme

Her mikroservisi ayrı imaja paketleyip Compose ile bütün topolojiyi çalıştırabilirsiniz.

✅
Gözlemlenebilirlik

Log sürücülerini ve metrik toplayıcıları kurarak Docker ortamını sürekli izleyebilirsiniz.

✅
CI/CD Hattı

Build, tarama, test ve registry push adımlarını içeren Docker tabanlı CI/CD hattı kurabilirsiniz.

Kimler İçin Uygundur?

  • Çok servisli uygulamaları yerelde
  • sunucuda tek komutla yönetmek isteyen geliştiriciler ve sistem yöneticileri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Çok servisli uygulamaları yerelde ve sunucuda tek komutla yönetmek isteyen geliştiriciler ve sistem yöneticileri için uygundur.
Eğitime katılmak için ön koşul ve ortam gereksinimi nedir?
Temel Linux komutları, dosya izinleri ve bir metin düzenleyici (vim/nano) ile rahat çalışmak beklenir. Docker Engine kurulu bir Linux VM ya da Docker Desktop ve en az 8 GB RAM önerilir.
docker-compose ile docker compose farkı nedir?
İlki Python tabanlı v1, ikincisi Go tabanlı v2 eklentisidir; eğitimde v2 kullanılır ve geçiş notları verilir.
Compose üretimde kullanılabilir mi?
Tek sunucu senaryolarında evet; ölçek ve yüksek erişilebilirlik için orkestrasyon seçenekleri tartışılır.
Eğitim sonunda sertifika alabilir miyim?
Programı tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Docker Compose ile Çok Konteynerli Uygulama Yönetimi Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre3 gün
SeviyeTemel Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

Docker ve KonteynerleştirmeCloud Data Architecture: Cloud Architecture & Containerization Eğitimi
DevOps ve Konteyner Eğitimleri

Cloud Data Architecture: Cloud Architecture & Containerization Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Cloud Data Architecture: Cloud Architecture & Containerization: bulut veri mimarisi, veri gölü, data lake ve uygulamalı laboratuvarlar. DVA Katılım ve Başarı Se

Detayları Gör →
Docker ve KonteynerleştirmeCompTIA Cloud+: Containers and Virtualization Eğitimi
DevOps ve Konteyner Eğitimleri

CompTIA Cloud+: Containers and Virtualization Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

CompTIA Cloud+: Containers and Virtualization: comptia cloud+, cloud+ eğitimi ve uygulamalı laboratuvarlar. Digital Vizyon Akademi Katılım ve Başarı Sertifikası

Detayları Gör →
Docker ve KonteynerleştirmeCompTIA Linux+: Application Containers Eğitimi
DevOps ve Konteyner Eğitimleri

CompTIA Linux+: Application Containers Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

CompTIA Linux+: Application Containers: comptia linux+, linux+ eğitimi, podman ve uygulamalı laboratuvarlar. Digital Vizyon Akademi Katılım ve Başarı Sertifikas

Detayları Gör →
Docker ve KonteynerleştirmeCompTIA Linux+: Containerization and Image Management Eğitimi
DevOps ve Konteyner Eğitimleri

CompTIA Linux+: Containerization and Image Management Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

CompTIA Linux+: Containerization and Image Management: linux+ imaj yönetimi ve uygulamalı laboratuvarlar. Digital Vizyon Akademi Katılım ve Başarı Sertifikası i

Detayları Gör →
Docker ve KonteynerleştirmeContainer Adoption Boot Camp (DO700) Eğitimi
DevOps ve Konteyner Eğitimleri

Container Adoption Boot Camp (DO700) Eğitimi

4 günOrtaOnline / Yüz Yüze / Hibrit

Container Adoption Boot Camp (DO700): konteyner benimseme, do700, podman, buildah ve uygulamalı laboratuvarlar. Digital Vizyon Akademi Katılım ve Başarı Sertifi

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn