Junior — Middle
Milyen megközelítések csökkentik a végső Docker-kép méretét?
sobes.tech MI
Válasz az MI-től
A Docker végső képének méretének csökkentése érdekében a következő megközelítéseket alkalmazzák:
- Minimalista alapképek használata: például
alpinehelyettubuntuvagydebian. - Többlépcsős építés (multi-stage builds): lehetővé teszi az alkalmazás építését egy képen, majd csak a szükséges artefaktumok másolását a végső képre.
- Átmeneti fájlok és cache-ek törlése: csomagok, csomagkezelők cache-einek, ideiglenes fájlok törlése az installálás után.
- RUN parancsok egyesítése: csökkenti a kép rétegeinek számát.
.dockerignorehasználata: kizárja a szükségtelen fájlokat az építési kontextusból.
Példa többlépcsős építésre:
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"]
Ez a megközelítés lehetővé teszi, hogy kompakt képet kapjunk, amely csak a futtatáshoz szükséges alkalmazást tartalmazza.