Junior — Middle
Qaysi yondashuvlar Docker-ning yakuniy tasvirining hajmini kamaytirishga imkon beradi?
sobes.tech AI
AIdan javob
Docker-ning yakuniy hajmini kamaytirish uchun quyidagi yondashuvlar qo'llaniladi:
- Minimalist asosiy tasvirlardan foydalanish: masalan,
alpineo'rnigaubuntuyokidebian. - Ko'p bosqichli qurilish (multi-stage builds): ilovani bir tasvirda qurish va faqat kerakli artefaktlarni yakuniy tasvirga ko'chirish imkonini beradi.
- Vaqtinchalik fayllar va kechlarni o'chirish: paketlarni, paket menejerlarining kechlarini, o'rnatishdan keyingi vaqtinchalik fayllarni tozalash.
- RUN buyruqlarini birlashtirish: tasvir qatlamlarining sonini kamaytiradi.
.dockerignoredan foydalanish: qurilish kontekstidan keraksiz fayllarni chiqarib tashlaydi.
Ko'p bosqichli qurilish misoli:
FROM golang:1.20-alpine AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp
FROM alpine
COPY --from=builder /app/myapp /myapp
CMD ["/myapp"]
Ushbu yondashuv faqat ishga tushirish uchun zarur bo'lgan ilova bilan kichikroq tasvirni olish imkonini beradi.