Sobes.tech
Senior

Docker imajının boyutunu küçültmek için hangi uygulamalar vardır?

sobes.tech yapay zeka

AI'dan gelen yanıt

Docker görüntüsünün boyutunu küçültmek için birkaç uygulama yapılır:

  • Minimalist temel görüntülerin kullanılması, örneğin alpine yerine ubuntu.
  • Çok aşamalı derleme (multi-stage builds), ilk aşamalarda uygulamanın derlenmesi ve son görüntüde yalnızca minimum çalışma zamanı ve derlenmiş ikili dosyanın kalması.
  • Bağımlılıkların yüklenmesinden sonra önbelleklerin ve geçici dosyaların temizlenmesi.
  • Katman sayısını azaltmak için RUN komutlarının birleştirilmesi.
  • Gerekli olmayan dosyaları derleme bağlamından çıkarmak için .dockerignore kullanılması.

Go için çok aşamalı Dockerfile örneği:

# Aşama 1: Derleme
FROM golang:1.20-alpine AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp

# Aşama 2: Minimal çalışma zamanı
FROM alpine:latest
WORKDIR /app
COPY --from=builder /app/myapp .
CMD ["./myapp"]

Bu yaklaşım, minimum dosya setiyle kompakt bir görüntü elde etmeyi sağlar.