Merhaba sevgili okur,
Docker’ı yönetmek için kullanabileceğiniz (docker cli) temel komut listesini örnekler üzerinden anlatmaya çalıştım.
docker ps
Çalışan konteyner’ları listeler.
![](https://anilatalay.com/content/images/2020/12/1_dP3wo4XAADSzpZnX8hrT9g.gif)
docker ps -a
Çalışan çalışmayan tüm konteyner’ları listeler.
![](https://anilatalay.com/content/images/2020/12/1__-y6Ye9Ly3b40nIU21x6-Q.gif)
docker images
İndirilmiş image’ları listeler.
![](https://anilatalay.com/content/images/2020/12/1_yv43McO2oZGKCqaq4jlOzg.gif)
docker pull alpine
Docker repository (hub.docker.com) den adı verilen (alpine) image’ı çeker.
Not: “alpine” küçük bir Linux dağıtımıdır.
![](https://anilatalay.com/content/images/2020/12/1_L_od0qVCoVVaOGIErzmp8w.gif)
docker run alpine
Adı verilen image’dan bir konteyner oluşturur ve image’a eklemiş başlangıç kodunu çalıştırır. Bu başlangıç kodu dockerfile kısmında ayrıntılı açıklayacağım. Bu kod sonladıktan sonra konteyner kapalı duruma geçer.
![](https://anilatalay.com/content/images/2020/12/1_syoBVVyN66IxymmMXQRxYQ.gif)
docker run -d jpetazzo/clock
Adı verilen image’dan bir konteyner oluşturur ve arka planda çalışmaya devam eder.
![](https://anilatalay.com/content/images/2020/12/1_fhTpTiUZtTb-ASZCQJ0hqQ.gif)
docker run --rm hello-world
Adı verilen image’dan bir konteyner oluşturur ve konteyner’ın başlangıç kodu çalıştıktan sonra konteyner otomatik olarak silinir.
![](https://anilatalay.com/content/images/2020/12/1_wZ1BOQE-xFs-gDljLBsBmQ.gif)
docker run -it alpine
Adıverilen image’dan bir konteyner oluşturur ve konteyner’e terminal bağlantısı sağlar.
![](https://anilatalay.com/content/images/2020/12/1_YLpceVYFrmyY1KsXh8fTFQ.gif)
docker stop 09f8b2a5d25b
Çalışan konteyner’a kısa bir süre (10sn) sonra kapanacağını belirten bir sinyal gönderir ve süre tamamlandığında konteyner’ı sonladırılır.
![](https://anilatalay.com/content/images/2020/12/1_fsWRCfgYoKhqllkLOY8liQ.gif)
docker kill 09f8b2a5d25b
Id’si verilen çalışan konteyner’ı sonladırır.
![](https://anilatalay.com/content/images/2020/12/1_Y6rJGl4B7kTtgWcjnS2wGw.gif)
docker rm 99ae02566af7
Id’si verilen konteyner’i siler.
![](https://anilatalay.com/content/images/2020/12/1_ETPVvVF_0Ikil3QzsL1ffQ.gif)
Not: Id kullanılan komutlar da id’nin benzersiz 3–4 karakterini de kullanabilirsiniz. (Örnek: 99ae02566af7 -> 99a)
docker rmi 321d39ea3f0f
Id’si verilen image’ı siler.
![](https://anilatalay.com/content/images/2020/12/1_V-kmhEiVlxE21yzm8Agqog.gif)
Not: Image’ı kullanan konteyner’lar bulunuyorsa silme işlemi gerçekleşmez.
docker exec -it 321d39ea3f0f sh
Çalışan konteyner’a erişmek ve içinde komut çalıştırabilmek için kullanılır.
![](https://anilatalay.com/content/images/2020/12/1_KcSM2yYa4B2tJWOeQ2aBEw.gif)
docker run -p 8080:80 nginx
Adı verilen image’dan bir konteyner oluşturur ve 8080 portuna gelen istekleri konteyner içerisindeki 80 portuna yönlendirir.
![](https://anilatalay.com/content/images/2020/12/1_uCbbuRl6NEAG4OmzD1hVtQ-1.gif)
docker logs 321d39ea3f0f
Id’si verilen konteyner’ın oluşturmuş olduğu log’ları görüntüler.
![](https://anilatalay.com/content/images/2020/12/1_oCQpZSKzgOaQoHw_hfkqiA.gif)
docker logs -f 321d39ea3f0f
Id’si verilen konteyner’ın oluşturmuş olduğu canlı log’ları görüntüler.
![](https://anilatalay.com/content/images/2020/12/1_K63ZWqrp0voG6OdWeLufjg.gif)
Development ortamınız da burada ki komutlar (docker cli) ile Docker’ı yönetebilirsiniz. Fakat gerçek dünya da işler tabi ki böyle yürümüyor :( Her bir yazımda gerçek dünyaya bir adım daha yaklaşacağız. Bir sonraki postumda görüşmek üzere.