Junior — Middle
Paaiškinkite daugiapakopės statybos koncepciją Docker ir jos privalumus.
sobes.tech AI
Atsakymas iš AI
Docker daugiapakopis statybos leidžia naudoti kelis statybos etapus viename Dockerfile. Tai reiškia, kad pirmiausia galima sukurti programą konteineryje su reikalingais įrankiais ir priklausomybėmis, o tada nukopijuoti tik būtinus artefaktus į galutinį vaizdą, kuris bus minimalus ir lengvas.
Privalumai:
- Galutinio vaizdo dydžio sumažinimas, nes neįtraukiami statybos įrankiai ir laikini failai.
- Padidinta saugumas, nes galutiniame vaizde nėra nereikalingų komponentų.
- Paprastesnė priežiūra ir skaitomumas Dockerfile, nes visi etapai aprašyti vienoje vietoje.
Pavyzdys Go:
# Statybos etapas
FROM golang:1.20 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp
# Galutinis vaizdas
FROM alpine:latest
WORKDIR /app
COPY --from=builder /app/myapp .
CMD ["./myapp"]