Konteyner (konteyner) , yazılımı çalıştırmak için ihtiyacınız olan her şeyi içeren bir yazılım paketidir: uygulama, bağımlılıkları, kitaplıkları ve sistem araçları. Bu, dağıtıldığı ortamdan bağımsız olarak yazılımın sorunsuz çalışmasını sağlar.
Kapsayıcılar Vm’lerden (sanal makineler) nasıl farklıdır?
Kapsayıcılar kavramını daha iyi anlamak için, bunları daha tanıdık sanal makinelerle (VM’ler) karşılaştırmak yararlıdır. VM’ler ve kapsayıcılar, uygulamaların çalışması için yalıtılmış bir ortam oluşturmak üzere tasarlanmıştır. Ancak, Vm’deki tüm donanımlar sanallaştırılırsa, işletim sistemi kapsayıcılarda sanallaştırılır. Bu sayede konteynerler Vm’lerden çok daha kolay ve daha hızlı başlatılıyor.
Konteynerin iç yapısı
Konteynerin iki ana bileşeni vardır: konteynerin görüntüsü ve konteynerin çalışma zamanı. Kapsayıcı görüntüsü, yazılımı çalıştırmak için tüm bileşenleri içeren yürütülebilir bir yazılım paketidir. Kapsayıcı çalışma zamanı, kapsayıcıları başlatan ve yöneten yazılımdır.
Konteyner kullanmanın faydaları
Konteynerlerin aralarında çok sayıda avantajı vardır:
- taşınabilirlik. Kapsayıcılar, uygulamanın çalışması için gereken her şeyi içerdiğinden, herhangi bir zorluk çekmeden bir bilgi işlem ortamından diğerine aktarılabilirler;
- etkililik. Konteynerler hafiftir ve geleneksel Vm’lerden daha az sistem kaynağı gerektirir, bu da belirli bir donanımda daha fazla konteynerin çalıştırılmasına olanak tanır;
- ölçeklenebilirlik. Kapsayıcılar ihtiyaca göre kolayca büyütülebilir veya küçültülebilir, bu da onları değişken iş yüküne sahip uygulamalar için ideal bir çözüm haline getirir;
- yalıtım. Her kapsayıcı kendi yalıtılmış ortamında çalışır, bu da uygulamanın kapsayıcı içindeki çalışmasının diğer kapsayıcılardaki veya ana bilgisayar sistemindeki değişikliklerden etkilenmemesini sağlar.
Konteynerlerin uygulanması
Konteynerler çeşitli alanlarda yaygın olarak kullanılmaktadır. Bunlar, her mikro hizmetin kendi kapsayıcısında çalıştığı mikro hizmet mimarisinde kullanılır. Ayrıca konteynerler, geliştirme sürecinin farklı aşamalarında tutarlılığı sağlamak için sürekli entegrasyon ve sürekli dağıtım (CI/CD) boru hatlarında kullanılır.