A többlépcsős buildek egy Dockerfile-ban több FROM szakaszt használnak — az alkalmazást az egyik szakaszban (az összes build eszközzel) építik meg, és csak a végső artifaktumokat másolják át egy tiszta, minimális végső szakaszba. Ez sokkal kisebb, biztonságosabb production képeket hoz létre.
A probléma: a build eszközök felduzzadják a képet
Building an app needs build tools (compilers, dev dependencies, SDKs), but the
FINAL image shouldn't include them:
→ they bloat the image (larger size, slower deploys)
→ they increase the attack surface (more software = more vulnerabilities)
→ You want only the built artifact + its runtime in the final image.
