Distroless Docker: Containerizing Apps, not VMs
summary
Argues that containers should include only the runtime pieces between app and kernel, not a VM filesystem, and demonstrates it by building a Java servlet, packaging the WAR into a distroless runtime image based on Jetty, pushing it to Google Container Registry and running it (responds “hello swamp”). Uses both Bazel builds to produce language-level artifacts and Docker multi-stage builds with Maven to compile and copy the WAR. Images are smaller, compatible, and the live demo completes successfully.
AI-written summary · about
chapters (14)
- 0:00Intro
- 2:27Docker Files
- 3:28Docker
- 4:00Solution
- 8:40Whats Necessary
- 11:32Basil
- 12:34Live Demo
- 15:50Google Teams
- 16:35Why demo with Basil
- 18:57Demo with Docker File
- 20:45Demo with Maven
- 22:20Recap
- 26:08Special Thanks
- 26:42Questions
related talks
41mRapid Application Development with Docker
31mFast and Distroless Java in Containers: the Recipe!
41mContinuous Delivery with Docker Containers and Java EE
31mBuilding a private CI/CD pipeline with Java and Docker in the Cloud
46mDockerfiles, Buildpacks, Jib and more, best way to run Java code in Containers?
34mDefence Against the Docker Arts
46mWrite Once, Run Anywhere? Building Perfect Docker Images for Java Apps
25mBuilding Docker Images Without Docker
