17 Apr 2017
Docker Nedir? Ne işe Yarar?
  • 2639 Okuma
  • 0 Yorum
  • 31 Beğeni

Docker Nedir? Ne işe Yarar?

Programcılıkla uğraşan herkesin "Array Index Out of Bounds Exception" hatasıyla karşılaşması gibi, sunucu yönetimi yapan herkesinde benim bilgisayarımda çalışıyordu, bu kod/ program sunucuda neden çalışmadı sorunuyla karşılaşmıştır. Çünkü, genellikle yerel bilgisayarda olan bir program/ kütüphane ya da dosya izinleri sunucu tarafında da eksiktir ya da tam olarak yapılandırılmamıştır. Bu da çoğu zaman hatalara sebep olur ve yönetilebilirliği zorlaştırır.


Geleneksel yaklaşımda sunucu yönetimi sanal sunucular üzerinde yapılmaktadır. Sanal makine üzerinde bir web sunucu işletiyorsunuz, bu sunucu için RAM, HDD ve CPU kaynağı ayırmanız gerekmektedir. Bir sunucuya daha ihtiyaç duyduğunuzda yine bu yeni sunucu için kaynağa ihtiyacınız var. Kaynakları ayırdınız diyelim bu sefer de, sunucunun ihtiyacı olan kurulumları tekrardan yapmanız gerekmektedir. Yani her yeni sunucu birçok yapılandırma gerektiriyor. Bu da yönetimi zorlaştırıyor. İşte bu noktada sorunları çözmek için Docker imdadımıza yetişiyor.



Artık geleneksel sanallaştırma sorunlarının üstesinden gelmek için docker var. Docker açık kaynak kodlu, tamamen ücretsiz bir sanallaştırma platformudur Docker ile sistemlerinin kurulumunu, testini ve dağıtımını kolaylıkla gerçekleştirebilirsiniz.


Docker ile tüm sunucularımızı bir konteyner haline getiriyoruz ve tüm konteynerları bir gemiye yüklüyoruz. Gemimizde bir sorun olmadığı sürece konteyner haline getirdiğimiz sunucularımız sorunsuz olarak çalışıyor. Aklınıza ya gemi batarsa diye gelmesin, bu yapıda konteyner haline getirdiğimiz sunucuların yedekleri var. Hemen bu konteynerları yeni bir gemiye yükleyip sistemi kaldığı yerden devam ettirebiliyoruz.



Docker linux ve MAC işletim sistemleri üzerinde çalıştığı gibi, Microsoft Windows Server 2016 ile artık Windows iştetim sistemleriyle de kullanılabiliyor. Docker kurulumuyla ilgili ayrıntılı bilgilere aşağıda adresten erişebilirsiniz.


https://docs.docker.com/engine/installation/


Docker Temel Terim ve Bilgiler


Image : İçerisinde istediğimiz apahce, mysql gibi uygulamaları barındıran ve container hazırlamak için kullanılan onceden hazırlanmış paketlerdir. Bu paketler container'ların altyapısını oluşturur.


Dockerfile : Oluşturulmuş Image paketlerini üretmek için önceden belirlenmiş kuralları ve komutları içeren metin bazlı bir dosyaya verilen isimdir.


Container : Image'lardan türetilen ve türetildiği ortam (sunucu/bilgisayar) üzerinde çalışan/ çalışmaya hazır ortamdır.


DockerHub : Önceden hazırlanmış Image paketlerinin paylaşıldığı depodur. Birçok uygulamanın resmi image paketleri bu depoda yayınlanmaktadır.  imageların paylaşıldığı community deposu diyebiliriz. Bir çok official image barındırılmaktadır. DuckerHub'a aşağıdaki linkten erişebilirsiniz.


https://hub.docker.com/


Sonuç


Bu yazımda Docker'ın ne olduğu ve ne amaçla kullanıldığına dair bilgi vermeye çalıştım. Kurulumu kendi sitesinde güzel bir şekilde anlatıldığı için girmek istemedim. Umarım faydalı olur. İyi çalışmalar.


Makaleyi faydalı buldunuz mu ?

Yazar


Legend Engineer

Legend Engineer

Mühendis (Bilgisayar)

Bilgisayar Mühendisliği mezunuyum. Bilgisayar alanında edindiğim bilgileri bu blog üzerinde paylaşıyorum. Beni takipte kalın.

Yorumlar


İlk yorum yapan sen ol

İlginizi Çekebilir

Makale Hakkındaki Düşünçelerinizi Paylaşın