Goal to optimize a container image

Goal to optimize a container image

Faster build

Smaller image

More secure contents

Easier to maintain


Container image building

How do you build your container image?

In the beginning, there was Docker

But more great tools exist…

Focus on Docker/BuildKit

Strong focus on Developer Experience (DX)

Many innnovations in the last few years


Overview

Multi-stage build FROM scratch Order of commands BuildKit RUN cache Heredocs USER Parallel multi-stage build Dependency update, e.g. RenovateBot Patch/digest auto-merge Automated build Cache From Testing Scan Scheduled rebuild

More

BuildKit RUN mount

Base and derived images

LABEL

Job dependencies

CI caching

CI only certain file changes

Remote tagging

Readability beats size