Docker Compose Nedir?
Docker Compose, kompleks uygulamaların tanımlanmasını ve çalıştırılmasını sağlayan bir Docker aracıdır. Docker Compose ile birlikte birden fazla container tanımını tek bir dosyada yapabilir, tek bir komut ile uygulamanızın ihtiyaç duyduğu tüm gereksinimleri ayağa kaldırarak uygulamayı çalıştırabilirsiniz.
Docker Compose Kurulumu
Docker Compose'un geçerli sürümünü indirmek için:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Dosya izin işlemini gerçekleştirin
sudo chmod +x /usr/local/bin/docker-compose
Buraya kadar hata almadıysanız Docker Compose kurulumu gerçekleşmiş demektir.
Docker Compose kurulumunu test etmek için:
docker-compose --version
komutunu kullanabilirsiniz.
docker-compose version 1.29.2, build 1110ad01
çıktısını elde ettiyseniz Docker Compose başarılı bir şekilde kurulmuştur. Tebrikler...
Docker Compose Dosyası Nasıl Yazılır?
İlk olarak .yml uzantılı docker-compose dosyamızı oluşturalım.
vi docker.compose.yml
Dosya oluşturma işleminden sonra aşağıdaki örneği inceleyelim.
version: "3"
services:
nginx:
image: nginx
container_name: nginx-container
ports:
- "80:80"
Docker Compose .yml uzantılı dosyalar sistem tarafından satır satır okunan dosyalardır.
Örnek dosyayı açıklayacak olursak:
version: docker compose dosya version bilgisini içerir.
service: altındaki nginx alt nodeları içinde kullanılacak containerlar için gerekli tanımlamalar yapılır.
image: ile hangi image sürümünü kullanmamız gerektiğini tanımlıyoruz. Burada bir sürüm belirtilmediği için en son sürümü getirir.
container_name: oluşturulacak olan containera isim verir.Eğer belirtmezseniz Docker Engine random bir container ismi atayacaktır.
ports: nodu üzerinden 80portunu dinleyerek içeride 80 portuna yönlendirme yaparak yayında olacağını belirtir.
docker compose dosyası oluşturulup içeriği yazıldıktan sonra kaydedip çıktık.
docker-compose up
veya
docker-compose up -d
komutları ile docker-compose ayağa kaldırılır.Bu iki komut arasındaki fark ise -d girdisi ile detach mode ile çalıştır manasına gelmektedir.Peki detach mode nedir? Detach Mode: containerın arka planda çalıştırılması istendiğini bildirir. Eğer detach mode ile çalıştırmazsanız container ayağa kalkar ve ekrana container log bilgileri gelir.
Resimdede görüldüğü üzere docker-compose dosyamız ayağa kalmıştır.
docker ps
komutu ile container bilgisi listelenir.
Container oluşturulmuştur. Adres çubuğuna http://ipadresi:80 giderek containerın çalışıp çalışmadığını kontrol edelim.
Tebrikler! artık Docker Compose nedir? ve nasıl kullanılır biliyorsunuz.