Docker Compose ile Tanışın
Bir zamanlar, uygulamaları geliştirmek ve dağıtmak oldukça karmaşıktı. Ama sonrasında Docker ve Docker Compose gibi harika araçlar devreye girdi. Docker, uygulamaları kapsayıcılar (container) içinde çalıştırmamıza olanak tanırken, Docker Compose da çoklu kapsayıcıları bir arada yönetmek için hayat kurtarıcı bir araçtır. Eğer Windows kullanıyorsanız ve Docker Compose hakkında bilgi sahibi değilseniz, bu yazı tam size göre!
Docker Compose Nedir?
Docker Compose, birden fazla Docker konteynerini tek bir komutla çalıştırmamızı sağlayan bir araçtır. Çoğu zaman birden fazla servis ve bileşen içeren uygulamalar geliştiririz. Bu servislerin her biri farklı konteynerlarda çalışır. Docker Compose, bu konteynerların tümünü yönetmek için mükemmel bir çözüm sunar. Bir dosyada tüm servislerin yapılandırmalarını tanımlar ve tek bir komutla bu servisleri başlatır.
Windows Üzerinde Docker Compose Kurulumu
Windows’a Docker Compose kurmak için birkaç basit adımdan geçmek yeterli. Şimdi, adım adım nasıl kuracağınızı görelim:
Adım 1: Docker Desktop Kurulumu
Docker Compose kullanabilmek için önce Docker Desktop’ı indirip kurmanız gerekiyor. Docker Desktop, Docker’ı Windows üzerinde çalıştırmanıza imkan tanır ve Docker Compose’u içerir.
1. Docker’ın [resmi web sitesine](https://www.docker.com/products/docker-desktop) gidin.
2. Windows için olan versiyonu indirin ve kurulum işlemini başlatın.
3. Kurulum tamamlandığında, Docker Desktop’ı açın ve Docker’ın doğru bir şekilde çalışıp çalışmadığını kontrol edin.
Adım 2: Docker Compose’un Kurulumu
Docker Desktop ile birlikte Docker Compose zaten yüklü olacaktır. Ancak, Docker Compose’un doğru bir şekilde kurulduğundan emin olmak için terminal üzerinden şu komutu çalıştırabilirsiniz:
docker-compose --versionBu komut size yüklü olan Docker Compose sürümünü gösterecektir. Eğer sürüm numarasını görüyorsanız, her şey yolunda demektir!
Docker Compose Dosyası (docker-compose.yml) Oluşturma
Docker Compose ile uygulamanızın servislerini tanımlamak için bir YAML dosyası oluşturmanız gerekir. Bu dosyada, hangi konteynerların çalışacağı, hangi portların açılacağı ve hangi ortam değişkenlerinin ayarlanacağı gibi bilgileri belirtirsiniz.
Aşağıda basit bir docker-compose.yml dosyasının örneğini bulabilirsiniz:
version: '3'
services:
web:
image: nginx:latest
ports:
- "8080:80"
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: example
Bu dosya, iki servisi tanımlar: bir web sunucusu (nginx) ve bir veritabanı (mysql). Web sunucusu, 8080 portundan erişilebilirken, MySQL veritabanının kök şifresi "example" olarak belirlenmiştir.
Docker Compose ile Uygulama Başlatma
Şimdi, Docker Compose dosyasını hazırladınız. Peki, bu servisi nasıl başlatacağız? Çok basit!
Terminal üzerinden aşağıdaki komutu çalıştırın:
docker-compose upBu komut, docker-compose.yml dosyanızdaki servisleri başlatacaktır. Eğer arka planda çalışmasını istiyorsanız, şu komutu kullanabilirsiniz:
docker-compose up -dBu komutla konteynerlar arka planda çalışmaya başlar.
Docker Compose ile Servisleri Durdurma
Uygulamanızı durdurmak oldukça kolay. Tek yapmanız gereken şu komutu çalıştırmak:
docker-compose downBu komut, tüm konteynerları durdurur ve her şeyi temizler.
Docker Compose ile Çoklu Servis Yönetimi
Docker Compose’un gücü, çoklu servisleri aynı anda yönetebilmenizdir. Her servis farklı bir konteynerde çalışabilir ve birbirleriyle iletişim kurabilir. Örneğin, bir web uygulamanız ve bir veritabanınız varsa, Docker Compose sayesinde her iki servisi de aynı anda yönetebilirsiniz.
Ayrıca, Docker Compose'un sağladığı bir diğer avantaj da, her servisin bağımsız bir şekilde yapılandırılabilmesidir. Örneğin, bir veritabanını geliştirici ortamında farklı bir yapılandırma ile çalıştırabilirken, aynı servisi üretim ortamında farklı bir yapılandırma ile çalıştırabilirsiniz.
Sonuç
Docker Compose, özellikle birden fazla servis içeren uygulamalarda hayat kurtarıcıdır. Windows üzerinde Docker Compose kullanmak oldukça basittir. Docker Desktop’ı kurarak ve birkaç basit komutla uygulamanızı çok daha kolay bir şekilde geliştirebilir, test edebilir ve dağıtabilirsiniz.
Artık Docker Compose ile çoklu konteynerlarınızı kolayca yönetebilir ve Docker’ın gücünden tam anlamıyla faydalanabilirsiniz!