Bir önceki yazımızda container’larımızı aynı terminal içinde ayağa kaldırmıştık, şimdi imaj ve container’larla ilgili en çok kullanılan temel komutlardan bahsedeceğiz.
Makinanızdaki (local’deki) imajları görmek istediğinizi varsayalım? bunun için bir terminal penceresi açın ve aşağıdaki satırı yazın:
docker images
Bu komutu girdiğinizde, bilgisayarınıza indirilmiş olan tüm imajları görebileceksiniz:
Ekran çıktısındaki başlıkları inceleyelim;
*Repository: imajın bulunduğu repomuz
*Tag: Custom bir etikettir, imaj sürümlerinin güncelliğini buradan anlayabiliriz, siz kendi imajınıza istediğiniz bir tag (etiket) adı verebilirsiniz.
*İmage Id: Her imajın kendine ait uniq (benzersiz) bir id’si olur.
*Created: Bu imajın ne zaman oluşturulduğunu gösterir.
*Size: İmajın bilgisayarınızda kapladığı boyut.
Bu imajları önceki yazılarımızda beraber Dockerhub üzerinden indirdik ve şimdi makinamızda mevcutlar.
Şimdi bri container ayağa kaldıralım, node-js uygulaması olsun, bunun için kmut satırımızı hatırlayalım:
docker run -p 5000:5000 ozanzarci/hello-world-nodejs:0.1
Bu imajı bilgisayarınızda yoksa 15-20 saniye içerisinde indirecek, eğer daha önceki yazılarımızı takip ettiyseniz zaten makinanızda olacağı için birkaç saniyede container ayağa kalkacak ve aşağıdaki gibi bir çıktı alacaksınız:
5000 portunda Container’ımız ayağa kalktı ve hazır.
Şimdi hemen bir container daha ayağa kaldıralım, java uygulaması olsun, komut satırını hatırlatalım:
docker run -p 5001:5000 ozanzarci/hello-world-java:0.1
5001 portunda da java container’ımız ayağa kalkmış durumda.
İki ayrı browser sekmesi açıp localhost:5000 ve bir diğerine localhost:5001 yazdığınızda container’ların ayakta olduğunu göreceksiniz.
Peki, diyelim ki şuan kaç adet container’ın aktif olduğunu merak ediyorsunuz, bu listeyi nasıl görebilirsiniz?
Bunun için listeleme komutunu -ls kullanacağız:
docker container ls
Bu komut listeleme komutudur ve çalışan tüm Container listesini verir ve başlatığınız her Container oldukça bu listede yeni bir satır olarak göreceksiniz.
Ekran çıktısındaki başlıkları inceleyelim;
*Container Id: Aktif olan container’ın id’si.
*Image: imajın adı.
*Created: İlgili container ne zaman ayağa kalktı.
*Status: Her imajın kendine ait uniq (benzersiz) bir id’si olur.
*Created: Bu imajın ne zaman oluşturulduğunu gösterir.
*Status: Container’ın anlık ne durumda olduğu bilgisi.
*Ports: Container’ın hangi portta ayağa kalktığı bilgisi.
*Names: Buraya siz özel bir isim atamadığınız sürece random olarak bir name değeri atanır.
Peki biz aktif olsun olmasın, sistemde daha önce ayağa kaldırılmış tüm Container’ların bilgisini görmek istersek?
Bunu da -a komutuyla yapacağız:
docker container ls -a
Bu komut sonrasnda şimdiye kadar çalıştırılmış, durdurulmuş, duraklatılmış vb. ne kadar Container varsa listesini göreceksiniz, Container’ların ne zaman oluşturulduğu ve ne zamandır çalışmadığı bilgisini de Status sütunundan görebilirsiniz:
Peki bu ekranı temizleyelim; terminale cls yazın ve enter tuşuna basın, şimdi aktif container listemizi tekrar görelim, bunun için -ls komutunu tekrar kullanın (hatırlatma: docker container ls)
Container’larımızdan birini durdurmak istediğimizi varsayalım, bunu nasıl yapacacağız?
stop komutunu kullanacağız.
Bu komutu kullanmak için durdurmak istediğimiz contaner id’sini biliyor olmamız gerekli, bu da terminal satırında karşımızda Container id olarak duruyor:
Örneğin bende ilk sırada olan, Java çalıştıran container’ı durdurmak istediğimizi varsayalım, Container id’sini görebiliyorsunuz, bunun için yazacağımız kod satırı:
docker container stop ccebf4c962b2
Bu komuttan sonra terminalde işlemin tamamlandığnı container adının tekrar çıktı olarak verildiğinden anlayabilirsiniz, hatta şimdi Java’nın çalıştığı localhost:5001 adresine gittiğinizde container’ın çalışmadığını göreceksiniz.
Şimdi tekrar aktif olan container’larımızı görelim, -ls komutunu girdiğinizde artık sadece tek bir aktif container göreceksiniz.
Bu yazımızda ls , -a , stop komutlarındna bahsettik, bir sonraki yazımızda görüşmek üzere.