Modern Altyapı Pratikleri : Linux Container’larını Anlamak
Kurslara kayıt olmak için tıklayın
Eğitmenler:
Başar Subaşı
Linux Container’larının çalışma prensipleri.
Katılımcılar için ön şartlar:
- Verilen eğitimi öğrenmeye istekli olmak
- Basit düzey ingilizce bilmek
Katılımcıların eğitime bilgisayar dışında getirmesi gereken donanım/yazılım:
Yok.
Eğitim İçeriği:
Bölüm 1: Temel Kavramlar
Linux Kernel ve İşletim Sistemi Temelleri
- Kernel nedir ve ne işe yarar?
- Kernel space vs user space
- Syscalls — programlar kernel ile nasıl konuşur?
Unix standartları
- Standartların önemi
- Unix sistemlerde “dosya” kavramı
- Unix dizin yapısı
- Virtual File System nedir?
- I/O 101
Process’ler
- Process nedir
ps, top, /procile process’leri inceleme- Process’ler nasıl oluşturulur? —
fork()veexec()pratiği - Process yaşam döngüsü
Namespace’ler
- Namespace nedir?
- Temel namespace türleri
- PID, Network, Mount, UTS
- nsenter kullanarak Namespace’lerle çalışmak
cgroup’lar
- cgroup’lar ne işe yarar?
- cgroup’ları canlı inceleme:
/sys/fs/cgroup - /sys/fs/cgroup ile cgroup pratikleri
Process’leri İzole Etmek
- chroot ne işe yarar?
- Namespace’ler ve cgroup’ları kullanarak izolasyon
Bölüm 2: Container ve sandbox kavramı
- Container nedir
- İllüzyon mu, izolasyon mu
- VM’ler vs container’lar
- Container escape nedir?
- Uygulamalı container escape
Bölüm 3: Modern Tooling ve Ekosistem
Docker Pratikleri
- Web sunucusu çalıştırmak
- Container persistence / mounts
- Container log’ları
- Container debugging
Container Runtime Stack
- OCI standardı
- modern tooling’i anlamak
runc → containerd → Docker- crun ve podman ile rootless containers
- Container yaşam döngüsü
- Dockerfile’lar ve image’lar
Bölüm 4: Minimal bir Container Runtime yazmak
minimal bir low-level container runtime implementasyonu (50~ satır kod ile)
Bölüm 5: Container Orchestration ve Kubernetes
Kubernetes’e çok kısa bir giriş
