Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
15 yazı bulundu
Container Güvenliği: Non-root, Read-only Filesystem, Capability'ler, Minimal Image ve Tarama
DevOps SERİ 13

Container Güvenliği: Non-root, Read-only Filesystem, Capability'ler, Minimal Image ve Tarama

Container'ı güvenli çalıştırmak, varsayılan ayrıcalıkları uygulamanın gerçekten ihtiyacı olana kadar daraltmaktır: non-root kullanıcı, salt okunur dosya sistemi ve tmpfs, --cap-drop ALL, no-new-privileges, bellek ve process limitleri. Bookstore'un API ve web container'larını bu bayraklarla çalıştırıyor, şifreyi environment variable yerine dosya olarak veriyor, image'ı Trivy ile tarıyor ve docker.sock'un neden host'ta root demek olduğunu gerçek çıktılarla görüyoruz.

14 Kas 2026 13 dk 12
Container Debugging: logs, exec, inspect, stats, events, docker debug ve Exit Code 137
DevOps SERİ 14

Container Debugging: logs, exec, inspect, stats, events, docker debug ve Exit Code 137

Container debugging'i üç soruyla başlar: hiç başlamıyor mu, başlayıp ölüyor mu, çalışıyor ama ulaşılamıyor mu? Exec format error ve CRLF'li script'i, restart döngüsünü, shell'siz chiseled image'a PID ve network namespace'ini paylaşan yardımcı container'la ve docker debug ile bakmayı ve health check process'i yüzünden 30 saniyede bir 137 ile ölen Bookstore.Api'yi stats, inspect ve events ile gerçek çıktılarla çözüyoruz.

14 Kas 2026 12 dk 16
Eski Docker Kurulumlarını Okumak ve 2026'ya Taşımak: Legacy Builder'dan BuildKit'e, Port 80'den 8080'e, Debian'dan Ubuntu'ya, Graph Driver'dan containerd'ye
DevOps SERİ 15

Eski Docker Kurulumlarını Okumak ve 2026'ya Taşımak: Legacy Builder'dan BuildKit'e, Port 80'den 8080'e, Debian'dan Ubuntu'ya, Graph Driver'dan containerd'ye

Eski bir Dockerfile'ı 2026'ya taşımak birkaç değişikliği birlikte okumaktır: legacy builder yerine BuildKit, MAINTAINER ve shell form yerine label ve exec form, .NET 8'deki port 80'den 8080'e ve root'tan app kullanıcısına geçiş, .NET 10'daki Debian'dan Ubuntu'ya geçiş, Engine 29'un containerd image store'u ve API sürümü. Bookstore'un 2021 tarihli varsayımsal Dockerfile'ını gerçek çıktılarla satır satır modernize ediyor, .NET 11 SDK'nın lokal runtime seçimini ve SOURCE_DATE_EPOCH'u deniyoruz.

14 Kas 2026 12 dk 15
Blog Haritası