Sık Kullanılan Docker Komutları

Merhabalar,

Bu son yazılarımda hep Docker’dan bahsettim ve bahsetmişken uygulamaya geçmenin anahtarı olan komutlardan biraz söz etmek istiyorum.

docker pull: pull komutu ile Docker Hub üzerindeki bir imajı sisteminize çekebiliyorsunuz.

Örneğin

docker pull debian

komutu ile debian için gerekli libleri indirip programınızı debian üzerinde çalışıyormuş gibi çalıştırabileceksiniz.

docker run: bu komut ile çalışmaya hazır olan imajı makinenizde çalıştırabiliyorsunuz. İstenirse birden fazla instance oluşturulabiliyor.

docker run -v  $(pwd)/dosyalar:/home/dosyalar -p 80:8080  -it –name containeradi ubuntu

yukarıdaki komut ile ilgili açıklama yapmak gerekirse daha önceden pull edilmiş ubuntu imajı çalıştırılacak fakat aşağıdaki özellikler geçerli olacak:

-v: Çalıştırılan docker container üzerinde bir klasör map edilecek ve şuanki directory üzerindeki dosyalar klasörü ile container üzerindeki /home/dosyalar klasörü içerik bakımından aynı olacaklar.

-it: Docker’in mantığı foreground üzerinde hep bir uygulamanın çalışması olduğu için sadece ubuntuyu çalıştırınca ön planda  her hangi bir servis çalışmadığı için durdurulacaktır. Bu yüzden /bin/bash’e atarak sanki terminalde bekliyormuşçasına bekletebiliyoruz.

–name: run işleminin ardından docker container adının kullanıcı tarafından verilmesi identification bakımından iyi olacaktır. Verilmemiş ise Docker random bir isim tanımlamaktadır.

docker build: Docker build aslında bir Dockerfile üzerinden çalıştırılır. Yani kısaca özetlemek gerekirse Docker üzerinde bir imajınız olsun istiyorsunuz ve çalıştırılır çalıştırılmaz belirli uygulamaları indirmesini ve run etmesini istiyorsunuz diyelim. Docker file oluşturup, gerekli dosyaları kopyalatıp bunun üzerinden yeni bir imaj oluşturabiliyorsunuz.

docker build –no-cache -t imajintagadi .

Yukarıdaki komuttan bahsedecek olursak oluşturulan Dockerfile’in olduğu klasörde olup yukarıdaki kod çalıştırıldığında Dockerfile sırasıyla okunup bir base imaj seçilip gerekli komutlar sırasıyla çalıştırılıyor ve yeni bir imaj oluşturuluyor.

–no-cache: Build sırasında bazen sorunlar çıkabiliyor, ve Docker son ana kadar olan state’i önbelleğe alıyor ve daha hızlı bir build sağlanmış olabiliyor fakat bazı sıkıntılara da sebep olabiliyor. Bu yüzden cache kapatılabiliyor.

-t: oluşturulacak imaja bir tag vermek için kullanılır.

docker commit: Bu komut ile hazırda çalışan bir container’iniz var ise onu başka yerlerde çalışabilecek bir imaja dönüştürebiliyorsunuz.

docker commit c3f279d17e0a sehmusgokce/testimage:version3

Yukarıdaki komut ile c3f279d17e0a id’li container sehmusgokce kullanıcısının testimage adlı imajının versiyon3’ü olarak taglenecektir.

docker exec: bu komut ile container üzerinde shell komutu çalıştırabiliyorsunuz. Ayrıca istenirse shell’ine bile düşülebiliyor.

docker exec -it containeradi /bin/bash

Yukarıdaki komut ile çalışan bir container’in shell’ine düşebiliyorsunuz. Böylece istenenler container üzerinde kolayca yapılabiliyor.

 

Umarım açıklayıcı olmuştur.

 

 

Bu yazı Docker, Yazılarım kategorisine gönderilmiş ve , ile etiketlenmiş. Kalıcı bağlantıyı yer imlerinize ekleyin.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir