Docker Compose ile Python Proje Örneği

Docker Compose Nedir?

Docker Compose, birden fazla konteyner uygulamalarını tanımlamak ve yönetmek için kullanılan bir araçtır. Python projeleri gibi mikroservis mimarisiyle geliştirilen uygulamalarda, çeşitli bileşenlerin (veritabanı, API, ön yüz) bir arada çalışabilmesi için konteynerler arasında ağ bağlantıları kurmak ve ortam değişkenlerini ayarlamak gereklidir. Docker Compose, bu süreci basit ve verimli bir şekilde otomatikleştirir.

Docker Compose, bir YAML dosyası aracılığıyla uygulamanın tüm bileşenlerini tanımlar. Bu dosya, hangi konteynerlerin çalışacağını, hangi görüntülerin kullanılacağını, hangi portların açılacağını ve diğer konfigürasyon bilgilerini içerir. Bu sayede, bir projenin tüm yapılandırmasını tek bir dosyada tutarak, uygulamanın hızlı bir şekilde başlatılmasını sağlar.

Özellikle Python ile geliştirilmiş uygulamalarda, Docker Compose kullanarak Flask veya Django gibi web çerçevelerini, veritabanlarını (örneğin PostgreSQL veya MySQL) ve diğer hizmetleri bir arada yönetmek oldukça kolaydır. Böylece, geliştiriciler projeye odaklanabilir ve altyapı ile ilgili karmaşık ayarlarla uğraşmak zorunda kalmazlar.

Python Uygulaması İçin Docker Compose Kurulumu

Docker Compose kullanarak bir Python projesini oluşturmak için ilk olarak sisteminizde Docker ve Docker Compose’un yüklü olduğundan emin olun. Resmi Docker web sitesinden gerekli yükleme adımlarını takip ederek kurulum yapabilirsiniz. Yükleme sonrasında, terminalde aşağıdaki komutu çalıştırarak Docker Compose sürümünü kontrol edin:

docker-compose --version

Eğer her şey yolundaysa, bir Python projesi için gerekli dizin yapınızı oluşturalım. Proje dizininizi oluşturun ve içerisine ‘app.py’ adında basit bir Flask uygulaması yazalım:

mkdir my-python-app
cd my-python-app
nano app.py

app.py içeriği şu şekilde olabilir:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Merhaba, Docker ile Python!'

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)

Bunun yanı sıra, gerekli bağımlılıkları yönetebilmek için bir requirements.txt dosyası oluşturmalıyız. Bu dosyaya Flask kütüphanesini ekleyelim:

echo 

Scroll to Top