Üretim Dockerfile’ı Yazma
Yalın ve yeniden üretilebilir bir konteyner görüntüsü oluşturun.
Üretim Dockerfile’ı Yazma, CoddyKit'te ücretsiz bir Flask Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Flask Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Flask Academy kursu toplamda 4 dersten oluşur.
Neden Kapsayıcılaştırmalısınız
Bir Docker imajı kodunuzu, Python'u ve tüm bağımlılıkları her makinede aynı şekilde çalışan tek bir birimde toplar. Artık “benim bilgisayarımda çalışıyor” sorunu yok. 🐳
Dockerfile
Bir Dockerfile bir reçetedir. Her satır, Docker'ın imajınızı oluştururken temel katmandan son çalıştırma komutuna kadar uyguladığı bir adımdır.
Küçük Bir Temel İmaj Seçin
Resmî bir python imajıyla başlayın. Slim çeşidi, çalışır durumda bir Python çalışma zamanı sağlamaya devam ederken imajı küçük tutar.
FROM python:3.12-slimBir Çalışma Dizini Belirleyin
Kodunuzun imajın içinde bulunacağı yeri seçmek için WORKDIR kullanın. Bundan sonraki her komut bu klasöre göre çalışır.
WORKDIR /appÖnce Gereksinimleri Kopyalayın
Kodunuzdan önce requirements.txt dosyasını kopyalayın. Bu, Docker'ın kurulum katmanını önbelleğe almasını ve yalnızca kodunuz değiştiğinde bu adımı atlamasını sağlar.
COPY requirements.txt .Bağımlılıkları Kurun
Katmanı yalın tutmak için önbellek kullanmadan pip install komutunu çalıştırın. Böylece Flask ve Gunicorn doğrudan imajın içine eklenir.
RUN pip install --no-cache-dir -r requirements.txtKodun Geri Kalanını Kopyalayın
Şimdi projenizin geri kalanını COPY ile içeri alın. Bu adım kurulumdan sonra geldiği için kodunuzdaki değişiklikler bağımlılık önbelleğini geçersiz kılmaz.
COPY . .Bağlantı Noktasını Belgeleyin
Uygulamanızın hangi bağlantı noktasını dinlediğini belirtmek için EXPOSE kullanın. Bu, hem belgeleme işlevi görür hem de araçların yapılandırmayı yapmasına yardımcı olur.
EXPOSE 8000Başlatma Komutunu Tanımlayın
CMD satırı, kapsayıcı başlatıldığında çalıştırılan komuttur. Kapsayıcının doğrudan sunucunuzla başlaması için bu satırı Gunicorn'a yönlendirin.
CMD ["gunicorn", "--bind", "0.0.0.0:8000", "wsgi:app"]Gereksiz Dosyaları Yok Sayın
Önbelleklerin, sanal ortamların ve git verilerinin imaja girmesini önlemek için bir .dockerignore dosyası ekleyin. Daha küçük derlemeler daha hızlı ve daha güvenlidir.
__pycache__/
.venv/
.git/Oluşturun ve Çalıştırın
docker build ile oluşturun, ardından imajı çalıştırıp bir bağlantı noktasını eşleyin. Paketlenmiş Flask uygulamanız artık herhangi bir ana makineye taşınabilir.
docker build -t myapp .
docker run -p 8000:8000 myappHızlı Kontrol
requirements.txt dosyasını kodunuzun geri kalanından önce neden kopyalamalısınız?
Özet
Dockerfile'ınız küçük bir temelden oluşturur, bağımlılıkları kurar, kodu kopyalar ve Gunicorn'u başlatır. Tek bir imaj her yerde çalışır. Sırada Nginx'i öne koymak var. 🔧
Sıkça Sorulan Sorular
“Üretim Dockerfile’ı Yazma” dersi ücretsiz mi?
Evet — “Üretim Dockerfile’ı Yazma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Flask Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Flask Academy kursu toplamda 4 dersten oluşur.
“Üretim Dockerfile’ı Yazma” dersinde ne öğreneceğim?
Yalın ve yeniden üretilebilir bir konteyner görüntüsü oluşturun. Flask Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Flask Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Flask Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Üretim Dockerfile’ı Yazma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Flask Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Flask Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Yerleşik Geliştirme Sunucusu Neden Kullanılmamalı
- Flask’ı Gunicorn Altında Çalıştırma
- Üretim Dockerfile’ı Yazma
- Nginx ve Compose ile Öne Alma