← Sözlük
Geliştirme

Containerization nedir?

Bir yazılımı tüm bağımlılıkları ve ayarlarıyla birlikte tek bir hafif paket haline getirerek her ortamda tutarlı çalıştırma yöntemidir.

Tanım

Konteynerleştirme (containerization), işletim sistemi seviyesinde sanallaştırma kullanarak uygulamaları birbirinden izole eden bir dağıtım yaklaşımıdır. Uygulama; çalışması için gereken kod, kütüphaneler ve sistem araçlarıyla birlikte bir konteyner paketi içine alınır. Bu sayede yazılım, geliştiricinin bilgisayarında nasıl çalışıyorsa test veya canlı sunucuda da tamamen aynı kararlılıkla çalışır.

Standart kargo konteynerlerine benzer: İçinde ne olursa olsun gemiye, trene veya tıra aynı kolaylıkla yüklenip taşınabilir.

Nasıl çalışır?

Uygulamanın ihtiyaç duyduğu gereksinimler bir yapılandırma dosyasında belirtilir ve bir konteyner imajı oluşturulur. Konteyner motoru, işletim sistemi çekirdeğini paylaşarak bu imajdan hafif ve yalıtılmış çalışma alanları türetir. Böylece her konteyner ayrı bir sanal makineye kıyasla saniyeler içinde ayağa kalkar.

Nerede kullanılır?

Mikroservis mimarilerinde, bulut bilişim altyapılarında ve sürekli entegrasyon/dağıtım (CI/CD) hatlarında yaygın olarak tercih edilir.

Sık karıştırılanlar

Geleneksel sanallaştırma ile karıştırılır. Sanal makineler her defasında tam bir işletim sistemi kurarken konteynerleştirme mevcut işletim sisteminin çekirdeğini paylaşır ve çok daha hafiftir.

Sorular ve yanıtlar

Konteynerleştirme için en yaygın araç hangisidir?

Docker, konteyner oluşturma ve çalıştırmada; Kubernetes ise binlerce konteyneri yönetmede sektör standardıdır.

Konteynerler güvenli midir?

İşletim sistemi çekirdeğini paylaştıkları için sanal makineler kadar mutlak yalıtım sağlamasa da doğru yapılandırılmış güvenlik duvarları ve yetkilendirmelerle oldukça güvenlidir.

İlgili terimler

Bu açıklama TreScout için yapay zekâ ile sade dille hazırlandı · yanlış ya da eksik gördüğünüz bir şey olursa hello@trescout.com. TreScout her gün GitHub, Hacker News ve Hugging Face'te öne çıkanları Türkçe özetler.