Docker Nedir ve Nasıl Kullanılır? Ne İşe Yarar?
Docker nedir? Sorusuna pek çok kişi tarafından yanıt aranıyor. Bu proje Mart 2013 yılında tanıtılan ve tanıtıldığı ilk günden itibaren yazılım dünyasını kasıp kavuran bir projedir. Konteynır tabanlı platformlar arasında üst sıralarda kendisine yer bulan bu uygulama ile yazılımın temel bileşenleri çok daha kolay öğrenilebiliyor. Bundan dolayı yazılım alanına yeni yönelen kişiler diğer uygulamalardan ziyade bu uygulamayı tercih ediyor.
Dockerın en önemli amacı herhangi bir uygulamanın kod ve bağımlılıklarını bir paketleme formatı olarak sunmaktır. Bunu gerçekleştirirken uygulamanın hızlı ve güvenilir şekilde çalıştırılmasına yardımcı olur. Hızlı ve güvenilir bir çalıştırma ortamı için popüler, bağımsız ve yürütülebilir kapsayıcı bir yazılım platformu oluşturur.
Yeni geliştirecek bir uygulamanın test edilmesi ve derlenmesi oldukça önemlidir. Söz konusu uygulama test edilip düzenlenmezse var olan problemleri görüntülenemiyor. Bu anlayışla hareket eden kişiler kullanımı kolay olmayan, ekstra ücretli ve pratik olmayan uygulamaları kullanabiliyor. Oysa ki Docker’da herhangi bir uygulama test edilip düzenlenebiliyor. Çünkü sistemde uygulamanın çalıştırılabilmesi için ihtiyaç duyulan her türlü kod, yazılım ve kitapçık bilgisi yer alıyor.
Dockerın kurulumu oldukça kolaydır. Bu yazılımı kurup kullanmak için ilk olarak yazılımın ana sayfasına gidip gerekli kurulum dosyalarını indirmek gerekiyor. Dosyaları düzenli ve doğru bir şekilde indiren kişiler işletim sistemine uygun olan kurulum işlemlerini gerçekleştirmelidir. Bazı kişiler kurulum aşamasında sorun yaşayabiliyor. Bu alanda sorun yaşayan kişiler indirdiği dosyanın işletim sistemine uygun olup olmadığına bakmalıdır.
Docker Neden Kullanılmalıdır?
Dockerin kullanılmasının birçok farklı nedeni vardır. Birçok farklı nedeni olduğu için farklı durumlar için kullanılabiliyor. Bu programı kullanmanın ilk nedeni daha fazla yazılım sunmaya olanak sağlamasıdır. Programı kullanan kişiler kullanmayan kişilere göre daha fazla yazılım sunabiliyor. Bu da zamandan ve iş gücünden tasarruf anlamına geliyor.
Sistemin kullanılmasının diğer bir sebebi de yapılan işlemler hakkında geri dönüt sağlamaya olanak sağlamasıdır. Dockerle beraber uygulama içerisindeki sorunlar bulunup çok daha sağlıklı bir şekilde düzeltilebiliyor. Bu da yazılımın daha rahat çalışmasına olanak sağlıyor.
Docker Hangi Durumlarda Kullanılmalıdır?
Dockerin kullanıldığı alan sayısı çok hızlı bir şekilde artıyor. Çünkü bu sistem günden güne daha fazla hayatın içerisine karışıyor. Bu da sistemi öğrenme ve kullanma zorunluluğunun ortaya çıkmasını sağlıyor.
Bu bağlamda şu durumlarda Dockerdan yardım alınabiliyor:
- Sürekli entegrasyon ve teslim alanında
- Mikro ve makro hizmetler
- Veri işleme birimi
- Conteiner
Dockerı modern uygulama oluşturmak isteyen kişiler sıklıkla kullanıyor. Pratik ve işlevsel bir platform olduğu için bireyler kolayca uygulama oluşturabiliyor.
Docker Kavramları Nelerdir?
Platformu yakından tanımak ve nitelikli kullanmak için belli başlı kavramları iyi bilmek gerekiyor. Bu kavramlar hem sistemin çalışma prensibini açıklar hem de ne işe yaradığını açıklar.
Bu alandaki kavramlardan bazıları şunlardır:
- Image
- Dockerfile
- Docherengine
- Docherhub
- Dockerdeamon
Image terimi çalıştırılmak istenen uygulamanın paketlenmiş hali olarak açıklanır. Image kavramı sistemin birçok farklı yerinde kullanılır. Dockerfile kavramı ise Image oluşturmaya yardımcı olan bir “config” dosyasıdır. Bunun yanında dockerhub kavramı ise Image dosyalarının saklandığı birimdir.
Docker Kullanmanın Avantajları
Docker yazılımı ülkemizde ve dünyada pek çok yazılımcı tarafından kullanılıyor. Diğer programlara nazaran bu sistemin birçok farklı avantajı bulunuyor. Bunlardan ilki kullanım kolaylığıdır. Sistemin ara yüzü oldukça net ve sade olduğu için kolayca kullanılabiliyor. Bunun yanında daha iyi yazılım teslimatına olanak sağlaması da platformun sunduğu avantajlardandır.
Mikro hizmetlerle bire bir uyumlu olması da Dockerin kullanımının avantajlarındandır. HTTPS ve http bileşenleri ile bire bir uyumlu olduğu için bu alanda daha etkili sonuçlar elde edilebiliyor.
Docker ile Sanal Makine Arasındaki Farklar
Teknoloji çok hızlı bir şekilde gelişiyor. Teknolojinin gelişmesine bağlı olarak Dockera duyulan ihtiyaç artıyor. Ancak bazı kişiler bu uygulama ile sanal makinenin birbiri ile aynı olduğunu düşünüyor. Oysaki bu iki sistem birbirinden temel farklılıklarla ayrılıyor.
Sanal makine üzerinde belli oranda kaynak paylaşımı yapılırken Dockerda yüksek miktarda kaynak paylaşımı gerçekleştirilebiliyor. Bununla beraber Dockerda yazılımın sunucu ortamına taşınması basit bir işlem olarak görülürken sanal makinede bu durum problem haline gelebiliyor.
Docker Temel Komutları
Dockerın donanım bilgilerini yakından öğrenebilmek için temel komutları iyi bilmek gerekiyor. Bu temel komutların başında build komutu geliyor. Build Image dosyasını yüklemeye yardımcı olur. Bunun yanında run komutu da bu alandaki önemli komutlardandır. Run komutu Image çalıştırır.
Images komutunun çalıştırılmasıyla beraber yüklenen bütün Imageler görüntülenir. Bu da bütün Image dosyalarını tek bir merkezden görüntülemeyi sağlar. Exec komutu ise container bölümüne geçip burada işlem yapmaya yardımcı olur.
Yapacağı işlemin ne olduğunu ve nasıl yapılacağını öğrenmek isteyen kişiler “help” komutunu uygular. Bu komut sayesinde yapılacak işlemin bilgileri okunabilir. Help komutunun yanında ps- aq komutu container kaldırılmasını sağlar.
Sıkça Sorulan Sorular
Dockerda Kaç Tane Komut Vardır?
Sistemde bilinen elliye yakın komut vardır.
Dockerı Kullanmak Güvenilir Mi?
Dockerın içerisindeki konteynırda çalışan uygulamalar başka bir konteynır içerisinde görüntülenemez. Bu da sistemin oldukça güvenilir olmasını sağlıyor.
Dockerı Birden Çok Ortamda Kullanabilir Miyim?
Bu uygulama birden fazla ortamda aynı sistem üzerinde kullanılabiliyor. Aynı uygulamayı kullanan kişiler farklı işletim sistemlerinden platforma bağlanabilir.