Docker ile Flask Uygulaması Geliştirme Rehberi

Giriş: Docker ve Flask ile Yazılım Geliştirmenin Avantajları

Günümüzde yazılım geliştirme süreçleri, çevik ve esnek bir şekilde ilerlemek için her zamankinden daha fazla araç ve teknik gerektirmektedir. Docker, konteyner tabanlı uygulama dağıtımını sağlayarak geliştiricilere bağımsız ve taşıması kolay ortamlar sunar. Özellikle Python ile yazılım geliştirenler için Flask, hafif ve kolay öğrenilebilen bir web çerçevesi olarak öne çıkmaktadır. Bu yazıda, Flask ile bir web uygulaması geliştirip, bunu Docker üzerinde nasıl çalıştırabileceğimize dair adım adım bir rehber sunacağız.

Flask ile web uygulamaları oluşturmak, çeşitli avantajlar sağlar. Öncelikle, Flask oldukça hafif bir çerçeve olduğu için hızlı prototipleme imkanı tanır. Ayrıca, zengin eklenti ekosistemi sayesinde ihtiyaç duyduğunuz özelliklere hızlıca ulaşabilirsiniz. Docker ile entegre ettiğinizde ise, uygulamanızın tüm bağımlılıklarıyla birlikte taşınabilirliği artar ve farklı ortamlarda tutarlılık sağlanır. Bunun yanı sıra, geliştirme ve üretim ortamlarındaki eşitleme sorunlarını minimize eder.

Bu yazıda yer alacak adımlar, Docker’ı kurmaktan başlayıp, basit bir Flask uygulamasının Docker container’ında çalıştırılmasına kadar gidecektir. Her aşamada dikkat edilmesi gereken noktaları ve olası hataları da ele alacağız.

Docker Kurulumu ve Temel Bilgiler

Docker’ı sisteminize kurmak için işletim sisteminize uygun bir kurulum dosyası indirip, kurulum işlemini tamamlamanız gerekmektedir. Docker, çoklu platform desteği sunan bir uygulama olduğundan, Windows, macOS veya Linux sistemlerinde kolaylıkla kullanılabilir. Kurulumdan sonra, Docker’ı doğru bir şekilde çalıştığından emin olmak için terminal veya komut istemcisinde docker --version komutunu çalıştırabilirsiniz. Eğer bir versiyon numarası alıyorsanız, kurulum başarılı demektir.

Bunun yanı sıra, Docker’ın temellerine aşina olmak için bazı temel kavramları anlamak önemlidir. Docker, uygulama ve hizmetleri izole etmenizi sağlayarak, her bir uygulamanın kendi dosya sistemine, ağ arayüzüne ve işlem alanına sahip olmasını sağlar. Temel olarak, Docker imajları ve konteynerler arasındaki farkı anlamak gerekmektedir. İmaj, oluşturulmuş bir uygulamanın çalışan bir versiyonunu temsil ederken, konteyner bu imajın çalışma sürecini ifade eder.

Docker ile çalışma mantığı, imajları barkodlanmış bir ürün gibi düşünmek ve bunları üretimdeki konteynerler olarak kullanmaktır. Bu süreç, uygulamanızın geliştirilmesi ve dağıtımında büyük avantajlar sağlar. Örneğin, uygulamanızın yapılandırma dosyaları, bağımlılıkları, çalışma ortamı gibi bilgileri tek bir Dockerfile adı verilen bir dosyada toplayarak, istediğiniz her yerde aynı ortamı hızlıca oluşturabilirsiniz.

Flask Uygulaması Oluşturma

Docker’ı kurduktan sonra şimdi biraz Flask ile basit bir web uygulaması oluşturacağız. Flask’i kullanarak bir ‘Merhaba Dünya’ uygulaması geliştirmek amacıyla, ilk olarak gerekli Python paketlerini yükleyelim. Öncelikle bir proje dizini oluşturarak başlayalım:

mkdir flask-docker-app && cd flask-docker-app

Proje dizinimizde, app.py adında bir Python dosyası oluşturmak üzere istemcimize bir metin editörü açmamız gerekiyor. Bu dosya, Flask uygulamamızı içerecektir:

touch app.py

artık app.py dosyasını açabilir ve aşağıdaki kodu ekleyebiliriz:

from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Merhaba Dünya!'
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)

Bu basit Flask uygulaması, kök URL’sine (/) gelen taleplere yanıt olarak

Scroll to Top