Docker görüntüleri oluşturmak için en iyi uygulamaların özeti
Docker görüntüleri oluştururken izlenecek en iyi uygulamaların listesi aşağıdadır:
- OS temel görüntüsü
İşletim sistemi temel görüntü boyutunun, görüntü boyutları ve güvenlik açıkları üzerinde çok fazla etkisi olabilir. Ubuntu(~188 MB) gibi en çok indirilen temel görüntüye kıyasla Alpine(~5 MB) gibi minimal Docker görüntüleri seçmelisiniz.
- Temel görüntüler
Her temel görüntünün belirli bir amacı olmalı ve yeniden kullanılabilirliği sağlamak için mümkün olduğunca genel olmalıdır.
- Minimum ayrıcalıklara sahip Docker kullanıcıları
Docker kullanıcıları yalnızca ihtiyaç duydukları ayrıcalıklara sahip olmalıdır. Örneğin KÖK kullanıcısı, konteyneri başlatmak için kullanılmamalıdır.
- Dockerignore’dan Yararlanın
Dockerignore, Docker görüntülerinizi olabildiğince yalın tutmak için kullanılabilir. Kök klasörünüzde .dockerignore adlı bir dosya oluşturabilir ve uygulamayı çalıştırmak için gerekli olmayan dosya ve dizinleri hariç tutmak için kullanabilirsiniz.
- AND veya COPY ile spesifik olun
AND veya öğesini kullanırken COPY, istediğiniz klasör veya dosyalarla ilgili spesifik olun. Görüntü boyutunu optimize etmenin kolay bir yoludur.
- Sabit etiket yerine belirli etiket
Docker etiketleri, belirli görüntü sürümleri/varyantları hakkında faydalı bilgiler iletir. Resmin hangi sürümünün çalıştığını izlemeyi ve geri almayı zorlaştırdığından ‘en son’ gibi sabit etiketler kullanmaktan kaçının.
- Görüntü yaşam döngüsü yönetimi
Bir görüntünün kullanımdan kaldırılmış bir sürümünü çalıştırmanız durumunda bir güvenlik ihlali meydana gelebilir. Bu nedenle, uygun bir görüntü yaşam döngüsü yönetimi uygulamak gerekir.
- Hassas bilgiler
Ortam değişkenleri, şifrelenmedikleri için sırları yönetmenin iyi bir yolu değildir. Sırları yönetmek için Hashicorp kasası gibi çözümler kullanılabilir.
- Çok aşamalı yapılar
Çok aşamalı yapılarla Dockerfile’ınızda birden çok ifade kullanırsınız. Çok aşamalı yapıları kullanarak, son görüntüde istemediğiniz her şeyi geride bırakarak eserleri bir aşamadan diğerine seçerek kopyalayabilirsiniz.
- Komutları birleştir
Dockerfile’deki her komut görüntüye bir katman eklediğinden, görüntü boyutunu küçültmenin bir yolu komutları birleştirmek. Örneğin, birden çok RUN komutu, tek bir RUN deyiminde birleştirilebilir.
Mustafa(Hüseyin) Sungur
tşk ellerinize sağlık
tşk ellerinize sağlık
See less