Junior — Middle
Millised lähenemised võimaldavad vähendada lõpliku Docker-pildi mahtu?
sobes.tech AI
Vastus AI-lt
Selleks, et Docker-i lõpppildi mahtu vähendada, rakendatakse järgmisi lähenemisviise:
- Minimalistlike baaspiltide kasutamine: näiteks
alpineasemelubuntuvõidebian. - Mitmeastmelised ehitused (multi-stage builds): võimaldab ehitada rakenduse ühes pildis ja kopeerida ainult vajalikud artefaktid lõpppildile.
- Ajutiste failide ja vahemälu eemaldamine: puhastada paketid, paketihaldurite vahemälu, ajutised failid pärast installimist.
- RUN käskude ühendamine: vähendab pildi kihte.
.dockerignorekasutamine: välistab ebavajalikud failid ehituse kontekstist.
Näide mitmeastmelisest ehitusest:
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"]
See lähenemine võimaldab saada kompaktse pildi, mis sisaldab ainult rakenduse käivitamiseks vajalikku komponenti.