Docker Nedir?
Docker, uygulamaları sanal bir ortamda çalıştırmak ve dağıtmak için kullanılan bir platformdur. Uygulama geliştirme ve dağıtım süreçlerini hızlandırmak amacıyla, uygulama bileşenlerini kapsülleyen konteynerler oluşturur. Bu konteynerler, gerekli kütüphaneler, bağımlılıklar ve ayarları içerir, böylece uygulama her ortamda aynı şekilde çalışabilir. Docker konteynerleri, sistem kaynaklarını daha verimli kullanarak hem hızlı hem de ölçeklenebilir bir yapı sunar.
Docker Konteynerleri
Docker konteynerleri, bazı temel bileşenlerden oluşur. Her konteyner, bir uygulama süreçlerini içerir ve bu süreçlerin izolasyonunu sağlar. Konteynerlerin çekirdek özelliklerinin yanı sıra, bunlar görüntülerden (images) oluşturulur. Bir görüntü, çalıştırılabilir bir dosya sistemi ve gerekli tüm bileşenleri içerirken, konteyner ise bu görüntünün çalıştırılan versiyonudur. Dolayısıyla, bir görüntü oluşturulup çalıştırıldığında bir veya birden fazla konteyner oluşturulabilir.
Docker Konteynerini Durdurmak
Docker, çalışan bir konteyneri durdurmak için `docker stop` komutunu kullanmaktadır. Bu komut, belirtilen konteyneri durdurur ve konteyner süreçlerine son verir. Durdurulan konteyner, daha sonra yeniden başlatılabilir. `docker stop` komutu çalıştırıldığında, konteynerin çalıştığı uygulama düzgün bir şekilde sonlandırılması amacıyla bir “SIGTERM” sinyali gönderir. Belirli bir süre sonra, konteyner durmazsa, “SIGKILL” sinyali göndermektedir. Bu şekilde, gerektiğinde zorla durdurma işlemi gerçekleştirilmiş olur.
Komutun Kullanım Şekli
`docker stop` komutunun genel kullanım şekli aşağıdaki gibidir:
“`
docker stop [SEÇENEKLER] KONTENYER_ID/AD
“`
Burada, KONTENYER_ID veya KONTENYER_AD, durdurulmak istenen konteyneri belirtmektedir. Bu bilgi, `docker ps` komutuyla alınabilen çalışan konteynerlerin listesinden temin edilebilir.
Durdurulan Konteynerlerle İlgili İşlemler
Durdurulan konteynerlerin durumunu incelemek ve gerekli işlemleri gerçekleştirmek için `docker ps -a` komutu kullanılabilir. Bu komut, tüm konteynerlerin listesine erişim sağlar. Durum bilgisi ile birlikte, hangi konteynerlerin aktif, hangilerinin durdurulmuş olduğunu görmek mümkündür.
Eğer durdurulan bir konteynerin yeniden çalıştırılması gerekirse, `docker start` komutu kullanılabilir. Aşağıda bu komutun kullanımı gösterilmiştir:
“`
docker start KONTENYER_ID/AD
“`
Durdurma Süresi ve Zaman Aşımı
`docker stop` komutunun varsayılan bir zaman aşımı süresi bulunmaktadır. Bu süre, genellikle 10 saniye olarak ayarlanmıştır. Eğer konteyner belirtilen süre içinde durmazsa, otomatik olarak “SIGKILL” sinyali gönderilir. Bu durumu değiştirmek için `-t` bayrağı kullanılabilir ve özel bir zaman aşımı süresi belirlenebilir:
“`
docker stop -t SÜRE KONTENYER_ID/AD
“`
Burada, SÜRE, konteyner durdurulmadan önce beklenilecek zamanın ifade edildiği değerdir. Örneğin, 30 saniyelik bir bekleme süresi:
“`
docker stop -t 30 KONTENYER_ID/AD
“`
Birden Fazla Konteyneri Durdurma
`docker stop` komutu ile birden fazla konteyner durdurulabilir. Konteyner ID’lerinden veya adlarından birden fazlası arka arkaya girilerek bu işlem gerçekleşir:
“`
docker stop KONTENYER_ID_1 KONTENYER_ID_2 KONTENYER_ID_3
“`
Bu şekilde, biri veya birden fazla konteynerin durdurulması sağlanmış olur. Durdurma işlemi başarılı bir şekilde tamamlandığında, Docker her bir konteyner için bir onay mesajı gösterir.
Uygulama ve Yöntemler
Docker konteynerleri durdurulduğunda, bazı uygulamalar için geri alınamaz bir durum oluşabilir. Bu nedenle, uygulama çalıştırmadan önce durdurma ve başlatma süreçlerini dikkate almak kritik öneme sahiptir. Ayrıca, konteyner durdurma sırasında veri kaybını önlemek için gerekli yedekleme mekanizmalarının kurulması da önerilmektedir.
Docker ile çalışırken, `docker stop` komutu sadece durdurmakla kalmayıp, konteynerlerin yönetiminde daha etkili bir yöntem sunmaktadır. Bu süreçlerin dikkatle yürütülmesi ile hem sistem performansı artırılabilir hem de uygulama yönetimi kolaylaşabilir.